mirror of
https://github.com/X11Libre/xserver.git
synced 2026-10-08 23:12:27 +00:00
This is a squash merge containing all the API changes, as
well as the video ABI bump.
Its been squashed to make bisection easier.
Full patch log below:
commit b202738bbf0c5a1c1172767119c2c71f1e7f8070
Author: Aaron Plattner <aplattner@nvidia.com>
Date: Mon May 14 15:16:11 2012 -0700
xfree86: Bump video ABI to 13.0
The ABI was broken by changes to convert from screen index numbers to ScreenPtr
/ ScrnInfoPtr in various structures and function signatures.
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 3d5f7d9f8d408bcad3f83277d255f25d3b0edbf3
Author: Dave Airlie <airlied@redhat.com>
Date: Thu May 24 10:56:57 2012 +0100
xf86: xf86ClearEntityListForScreen should take a pScrn
When adding GPU screens this make life easier.
(also fix comment, as pointed out by Alan)
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit afee8b5ab4501597ecc1ade34124d7ca227ab055
Author: Dave Airlie <airlied@redhat.com>
Date: Thu May 24 07:07:32 2012 +0100
xf86i2c: add pscrn for drivers to use
This just adds a pScrn pointer into the struct for the drivers to use
instead of scrnIndex. Mostly scrnIndex is used for logging, but some
drivers use it to lookup xf86Screens, so let them stash a pScrn instead.
Removing the scrnIndex is a bit more involved and I'm not sure its worth
the effort. Doing i2c in the X server is legacy code as far as I'm concerned.
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit ea5092f1f679691d187f1eee9427e6057beec56e
Author: Dave Airlie <airlied@redhat.com>
Date: Wed May 23 19:25:20 2012 +0100
dix/gc: consolidate GC object creation in one place
The standard GC create and scratch GC create were 90% the same really,
and I have a need in the future for creating GC objects without the
other bits, so wanted to avoid a third copy.
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 3d91482ea9b4883e64e496f2768168e0ffa21ba1
Author: Dave Airlie <airlied@redhat.com>
Date: Wed May 23 10:24:06 2012 +0100
xf86: add a define to denote the new non-index interfaces are being used
This can be used by drivers to provide compatible APIs.
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 37c3ae3e6cd4f3dedc72f371096d6743f8f99df3
Author: Dave Airlie <airlied@redhat.com>
Date: Wed May 23 15:09:12 2012 +0100
dix: make Create/Free scratch pixmaps take a ScreenPtr
While technically an API/ABI change I doubt anyone uses it,
but it helps in splitting screens up.
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 75f2062a3fe94f04764ecc7d2ff2fbbeccb9da60
Author: Dave Airlie <airlied@redhat.com>
Date: Wed May 23 14:57:55 2012 +0100
xf86/xv: remove scrnIndexfrom xf86FindXvOptions.
Move this interface to taking an ScrnInfoPtr.
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit f80c2374f40ea7b2ee0556e2e76cc07406f3d843
Author: Dave Airlie <airlied@redhat.com>
Date: Wed May 23 14:53:59 2012 +0100
xf86: make xf86DeleteScreen take a ScrnInfoPtr (v2)
stop passing indices into this function.
v2: drop flags argument.
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 58824e414f35682435f15bfe6c4b656bd90b9235
Author: Dave Airlie <airlied@redhat.com>
Date: Wed May 23 14:48:09 2012 +0100
xf86: fix xf86IsScreenPrimary interface to take a pScrn (API/ABI)
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 6b4fc1f9d391bcdf7ca288766e49bce60f4635cd
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 14:18:59 2012 +0100
xserver: convert block/wakeup handlers to passing ScreenPtr (ABI/API) (v2)
Instead of passing an index, pass the actual ScreenPtr. This allows
more moving towards not abusing xf86Screens + screenInfo.
v2: drop the blockData/wakeupData args as per ajax's suggestion.,
fix docs.
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 790d003de20fb47674420a24dadd92412d78620d
Author: Dave Airlie <airlied@gmail.com>
Date: Wed Apr 11 09:53:14 2012 +0100
xf86/common: remove some more pScrn->pScreen uses
remove some more conversions that appeared after api cleanups.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit aac85e18d1dd093f2cad6bd29375e40bd7af0b8f
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 16:34:53 2012 +0100
ddc: change API to take ScrnInfoPtr (v2)
This removes all xf86Screens usage from ddc code,
it modifies the API for some functions to avoid taking indices.
v2: address Alan's comments about dropping DDC2Init parameter.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit fe3f57b6eaf6860a33876a54f9439f69578f03a5
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 16:31:26 2012 +0100
vbe: don't use index for VBEInterpretPanelID (API)
Remove use of xf86screens from vbe module.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit abf1965f4ed91529036d3fdb470d6a3ce6f29675
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 16:25:11 2012 +0100
int10/vbe: don't use xf86Screens. (ABI) (v3)
Pass the ScrnInfoPtr instead of the index in the int10 struct.
This saves us using it to dereference xf86Screens.
v2: address Alan's comment to fix struct alignment.
v3: squash in all the int10 fixes, test the vm86 code builds,
after comments by Keith.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 23cca612b4fb5efc33683c7624b803b457387e3d
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 15:30:18 2012 +0100
xserver: drop index argument to ScreenInit (ABI/API) (v2)
This drops the index argument, its the same as pScreen->myNum,
and its the last major index abuse I can find.
v2: address Alan's review - update docs, fix xwin/xnest/darwin
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 40d360e2d7e832407f3ed64e3a02c27ecc89a960
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 15:23:01 2012 +0100
xf86: migrate PointerMoved from index to ScrnInfoPtr (ABI/API)
This migrates PointerMoved from an index to ScrnInfoPtr.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit aa60a2f38679d0eeb979a9c2648c9bc771409bf9
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 15:20:46 2012 +0100
xf86: migrate PMEvent to a ScrnInfoPtr (ABI/API)
This migrates the PMEvent from index to ScrnInfoPtr.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit d3f28ef44371ed4a039ffc5dd7eb6408d1269ba2
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 15:18:30 2012 +0100
xf86: migrate SetDGAMode from index to ScrnInfoPtr (ABI/API)
This migrates the SetDGAMode callback from an index to ScrnInfoPtr.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit baf5e4818a74f2b68c3dfdcc56f54322351039a0
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 15:14:11 2012 +0100
xf86: migrate ChangeGamma from index to ScrnInfoPtr (ABI/API) (v2)
This migrates the ChangeGamma interface to avoid passing a index.
v2: fix xf86RandR12.c + xf86cmap.c call
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 51e5f90ada929d6b23176090badbb42fdb3fa550
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 15:11:09 2012 +0100
xf86/exa: migrate index to screen types for EnableDisableFBAccess (ABI/API)
The EXA interface migrates to ScreenPtr,
and the xf86 interface migrated to ScrnInfoPtr.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 94f1f21d17e86f96d4a54292a399160950087675
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 15:02:11 2012 +0100
xf86: migrate ValidMode callback to ScrnInfoPtr (ABI/API)
This migrates the ValidMode to passing a ScrnInfoPtr instead
of an index.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 3f8f18198fed4f39ec805b508a3482e91eea26b2
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 14:59:46 2012 +0100
xf86: migrate SwitchMode to taking ScrnInfoPtr (ABI/API) (v2)
This migrate the SwitchMode interface to take a ScrnInfoPtr
instead of an index.
v2: drop flags.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit d06a038a5c49328ab3a8d969d24f9fcd22c63202
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 14:50:37 2012 +0100
xf86: move AdjustFrame to passing ScrnInfoPtr (ABI/API) (v2)
This converts AdjustFrame code paths to passing a ScrnInfoPtr
instead of an integer index.
v2: drop flags args.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 53d2f8608ffd4090d08e7d5cf2e92fb954959b90
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 14:41:27 2012 +0100
xf86: modify FreeScreen callback to take pScrn instead of index. (ABI/API) (v2)
Another index->pScrn conversion.
v2: drop flags arg.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 60db37c0b247052e0f5c54b1921fe58a3609c2e3
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 14:35:41 2012 +0100
xf86: change EnterVT/LeaveVT to take a ScrnInfoPtr (ABI/API break) (v2)
This modifies the EnterVT/LeaveVT interfaces to take a ScrnInfoPtr
instead of an index into xf86Screens. This allows dropping more
public dereferences of the xf86Screens and screenInfo.
v2: drop flags args as suggested by Keith, fix docs.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
commit 06729dbbc804a20242e6499f446acb5d94023c3c
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 14:04:59 2012 +0100
xserver: remove index from CloseScreen (API/ABI breakage)
This drops the index from the CloseScreen callback,
its always been useless really, since the pScreen contains it.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
1437 lines
54 KiB
C
1437 lines
54 KiB
C
|
|
#ifndef _XAALOCAL_H
|
|
#define _XAALOCAL_H
|
|
|
|
#ifdef HAVE_XORG_CONFIG_H
|
|
#include <xorg-config.h>
|
|
#endif
|
|
|
|
/* This file is very unorganized ! */
|
|
|
|
#include "gcstruct.h"
|
|
#include "regionstr.h"
|
|
#include "xf86fbman.h"
|
|
#include "xaa.h"
|
|
#include "mi.h"
|
|
#include "picturestr.h"
|
|
|
|
#define GCWhenForced (GCArcMode << 1)
|
|
|
|
#define DO_COLOR_8x8 0x00000001
|
|
#define DO_MONO_8x8 0x00000002
|
|
#define DO_CACHE_BLT 0x00000003
|
|
#define DO_COLOR_EXPAND 0x00000004
|
|
#define DO_CACHE_EXPAND 0x00000005
|
|
#define DO_IMAGE_WRITE 0x00000006
|
|
#define DO_PIXMAP_COPY 0x00000007
|
|
#define DO_SOLID 0x00000008
|
|
|
|
typedef CARD32 *(*GlyphScanlineFuncPtr) (CARD32 *base, unsigned int **glyphp,
|
|
int line, int nglyph, int width);
|
|
|
|
typedef CARD32 *(*StippleScanlineProcPtr) (CARD32 *, CARD32 *, int, int, int);
|
|
|
|
typedef void (*RectFuncPtr) (ScrnInfoPtr, int, int, int, int, int, int,
|
|
XAACacheInfoPtr);
|
|
typedef void (*TrapFuncPtr) (ScrnInfoPtr, int, int, int, int, int, int,
|
|
int, int, int, int, int, int, XAACacheInfoPtr);
|
|
|
|
typedef struct _XAAScreen {
|
|
CreateGCProcPtr CreateGC;
|
|
CloseScreenProcPtr CloseScreen;
|
|
GetImageProcPtr GetImage;
|
|
GetSpansProcPtr GetSpans;
|
|
CopyWindowProcPtr CopyWindow;
|
|
WindowExposuresProcPtr WindowExposures;
|
|
CreatePixmapProcPtr CreatePixmap;
|
|
DestroyPixmapProcPtr DestroyPixmap;
|
|
ChangeWindowAttributesProcPtr ChangeWindowAttributes;
|
|
XAAInfoRecPtr AccelInfoRec;
|
|
Bool (*EnterVT) (ScrnInfoPtr);
|
|
void (*LeaveVT) (ScrnInfoPtr);
|
|
int (*SetDGAMode) (ScrnInfoPtr, int, DGADevicePtr);
|
|
void (*EnableDisableFBAccess) (ScrnInfoPtr, Bool);
|
|
CompositeProcPtr Composite;
|
|
GlyphsProcPtr Glyphs;
|
|
} XAAScreenRec, *XAAScreenPtr;
|
|
|
|
#define OPS_ARE_PIXMAP 0x00000001
|
|
#define OPS_ARE_ACCEL 0x00000002
|
|
|
|
typedef struct _XAAGC {
|
|
GCOps *wrapOps;
|
|
GCFuncs *wrapFuncs;
|
|
GCOps *XAAOps;
|
|
int DashLength;
|
|
unsigned char *DashPattern;
|
|
unsigned long changes;
|
|
unsigned long flags;
|
|
} XAAGCRec, *XAAGCPtr;
|
|
|
|
#define REDUCIBILITY_CHECKED 0x00000001
|
|
#define REDUCIBLE_TO_8x8 0x00000002
|
|
#define REDUCIBLE_TO_2_COLOR 0x00000004
|
|
#define DIRTY 0x00010000
|
|
#define OFFSCREEN 0x00020000
|
|
#define DGA_PIXMAP 0x00040000
|
|
#define SHARED_PIXMAP 0x00080000
|
|
#define LOCKED_PIXMAP 0x00100000
|
|
|
|
#define REDUCIBILITY_MASK \
|
|
(REDUCIBILITY_CHECKED | REDUCIBLE_TO_8x8 | REDUCIBLE_TO_2_COLOR)
|
|
|
|
typedef struct _XAAPixmap {
|
|
unsigned long flags;
|
|
CARD32 pattern0;
|
|
CARD32 pattern1;
|
|
int fg;
|
|
int bg;
|
|
FBAreaPtr offscreenArea;
|
|
Bool freeData;
|
|
} XAAPixmapRec, *XAAPixmapPtr;
|
|
|
|
extern _X_EXPORT Bool
|
|
XAACreateGC(GCPtr pGC);
|
|
|
|
extern _X_EXPORT Bool
|
|
XAAInitAccel(ScreenPtr pScreen, XAAInfoRecPtr infoRec);
|
|
|
|
extern _X_EXPORT RegionPtr
|
|
|
|
XAABitBlt(DrawablePtr pSrcDrawable,
|
|
DrawablePtr pDstDrawable,
|
|
GC * pGC,
|
|
int srcx,
|
|
int srcy,
|
|
int width,
|
|
int height,
|
|
int dstx,
|
|
int dsty,
|
|
void (*doBitBlt) (DrawablePtr, DrawablePtr, GCPtr, RegionPtr,
|
|
DDXPointPtr), unsigned long bitPlane);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAScreenToScreenBitBlt(ScrnInfoPtr pScrn,
|
|
int nbox,
|
|
DDXPointPtr pptSrc,
|
|
BoxPtr pbox,
|
|
int xdir, int ydir, int alu, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAADoBitBlt(DrawablePtr pSrc,
|
|
DrawablePtr pDst, GC * pGC, RegionPtr prgnDst, DDXPointPtr pptSrc);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAADoImageWrite(DrawablePtr pSrc,
|
|
DrawablePtr pDst,
|
|
GC * pGC, RegionPtr prgnDst, DDXPointPtr pptSrc);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAADoImageRead(DrawablePtr pSrc,
|
|
DrawablePtr pDst,
|
|
GC * pGC, RegionPtr prgnDst, DDXPointPtr pptSrc);
|
|
|
|
extern _X_EXPORT void
|
|
XAACopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc);
|
|
|
|
extern _X_EXPORT RegionPtr
|
|
|
|
XAACopyArea(DrawablePtr pSrcDrawable,
|
|
DrawablePtr pDstDrawable,
|
|
GC * pGC,
|
|
int srcx, int srcy, int width, int height, int dstx, int dsty);
|
|
|
|
extern _X_EXPORT void
|
|
XAAValidateCopyArea(GCPtr pGC, unsigned long changes, DrawablePtr pDraw);
|
|
|
|
extern _X_EXPORT void
|
|
XAAValidatePutImage(GCPtr pGC, unsigned long changes, DrawablePtr pDraw);
|
|
|
|
extern _X_EXPORT void
|
|
XAAValidateCopyPlane(GCPtr pGC, unsigned long changes, DrawablePtr pDraw);
|
|
|
|
extern _X_EXPORT void
|
|
XAAValidatePushPixels(GCPtr pGC, unsigned long changes, DrawablePtr pDraw);
|
|
|
|
extern _X_EXPORT void
|
|
XAAValidateFillSpans(GCPtr pGC, unsigned long changes, DrawablePtr pDraw);
|
|
|
|
extern _X_EXPORT void
|
|
XAAValidatePolyGlyphBlt(GCPtr pGC, unsigned long changes, DrawablePtr pDraw);
|
|
|
|
extern _X_EXPORT void
|
|
XAAValidateImageGlyphBlt(GCPtr pGC, unsigned long changes, DrawablePtr pDraw);
|
|
|
|
extern _X_EXPORT void
|
|
XAAValidatePolylines(GCPtr pGC, unsigned long changes, DrawablePtr pDraw);
|
|
|
|
extern _X_EXPORT RegionPtr
|
|
|
|
XAACopyPlaneColorExpansion(DrawablePtr pSrc,
|
|
DrawablePtr pDst,
|
|
GCPtr pGC,
|
|
int srcx,
|
|
int srcy,
|
|
int width,
|
|
int height,
|
|
int dstx, int dsty, unsigned long bitPlane);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAPushPixelsSolidColorExpansion(GCPtr pGC,
|
|
PixmapPtr pBitMap,
|
|
DrawablePtr pDrawable,
|
|
int dx, int dy, int xOrg, int yOrg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapColorExpandMSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapColorExpand3MSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapColorExpandMSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapColorExpand3MSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapColorExpandLSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapColorExpand3LSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapColorExpandLSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapColorExpand3LSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapScanlineColorExpandMSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapScanlineColorExpand3MSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapScanlineColorExpandMSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop,
|
|
unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapScanlineColorExpand3MSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop,
|
|
unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapScanlineColorExpandLSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapScanlineColorExpand3LSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop, unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapScanlineColorExpandLSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop,
|
|
unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapScanlineColorExpand3LSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int skipleft,
|
|
int fg, int bg,
|
|
int rop,
|
|
unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWritePixmap(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int rop,
|
|
unsigned int planemask,
|
|
int transparency_color, int bpp, int depth);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWritePixmapScanline(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth,
|
|
int rop,
|
|
unsigned int planemask,
|
|
int transparency_color, int bpp, int depth);
|
|
|
|
typedef void (*ClipAndRenderRectsFunc) (GCPtr, int, BoxPtr, int, int);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAClipAndRenderRects(GCPtr pGC,
|
|
ClipAndRenderRectsFunc func,
|
|
int nrectFill, xRectangle *prectInit, int xorg, int yorg);
|
|
|
|
typedef void (*ClipAndRenderSpansFunc) (GCPtr, int, DDXPointPtr, int *,
|
|
int, int, int);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAClipAndRenderSpans(GCPtr pGC,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int nspans,
|
|
int fSorted,
|
|
ClipAndRenderSpansFunc func, int xorg, int yorg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillSolidRects(ScrnInfoPtr pScrn,
|
|
int fg, int rop,
|
|
unsigned int planemask, int nBox, BoxPtr pBox);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillMono8x8PatternRects(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox, int pat0, int pat1, int xorg, int yorg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillMono8x8PatternRectsScreenOrigin(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int pat0, int pat1, int xorg, int yorg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColor8x8PatternRectsScreenOrigin(ScrnInfoPtr pScrn,
|
|
int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorigin, int yorigin,
|
|
XAACacheInfoPtr pCache);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColor8x8PatternRects(ScrnInfoPtr pScrn,
|
|
int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorigin, int yorigin, XAACacheInfoPtr pCache);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillCacheBltRects(ScrnInfoPtr pScrn,
|
|
int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox, int xorg, int yorg, XAACacheInfoPtr pCache);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillCacheExpandRects(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox, int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillImageWriteRects(ScrnInfoPtr pScrn,
|
|
int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox, int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAPolyFillRect(DrawablePtr pDraw,
|
|
GCPtr pGC, int nrectFill, xRectangle *prectInit);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRendererMSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs,
|
|
int glyphWidth, int fg, int bg, int rop,
|
|
unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRenderer3MSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs,
|
|
int glyphWidth, int fg, int bg, int rop,
|
|
unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRendererMSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs, int glyphWidth,
|
|
int fg, int bg, int rop, unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRenderer3MSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs,
|
|
int glyphWidth, int fg, int bg, int rop,
|
|
unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRendererLSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs,
|
|
int glyphWidth, int fg, int bg, int rop,
|
|
unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRenderer3LSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs,
|
|
int glyphWidth, int fg, int bg, int rop,
|
|
unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRendererLSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs, int glyphWidth,
|
|
int fg, int bg, int rop, unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRenderer3LSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs,
|
|
int glyphWidth, int fg, int bg, int rop,
|
|
unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRendererScanlineMSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs,
|
|
int glyphWidth, int fg, int bg, int rop,
|
|
unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRendererScanline3MSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs,
|
|
int glyphWidth, int fg, int bg, int rop,
|
|
unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRendererScanlineLSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs,
|
|
int glyphWidth, int fg, int bg, int rop,
|
|
unsigned planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAATEGlyphRendererScanline3LSBFirst(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h, int skipleft,
|
|
int startline, unsigned int **glyphs,
|
|
int glyphWidth, int fg, int bg, int rop,
|
|
unsigned planemask);
|
|
|
|
extern _X_EXPORT CARD32 *(*XAAGlyphScanlineFuncMSBFirstFixedBase[32]) (CARD32
|
|
*base,
|
|
unsigned
|
|
int
|
|
**glyphp,
|
|
int line,
|
|
int
|
|
nglyph,
|
|
int
|
|
width);
|
|
|
|
extern _X_EXPORT CARD32 *(*XAAGlyphScanlineFuncMSBFirst[32]) (CARD32 *base,
|
|
unsigned int
|
|
**glyphp,
|
|
int line,
|
|
int nglyph,
|
|
int width);
|
|
|
|
extern _X_EXPORT CARD32 *(*XAAGlyphScanlineFuncLSBFirstFixedBase[32]) (CARD32
|
|
*base,
|
|
unsigned
|
|
int
|
|
**glyphp,
|
|
int line,
|
|
int
|
|
nglyph,
|
|
int
|
|
width);
|
|
|
|
extern _X_EXPORT CARD32 *(*XAAGlyphScanlineFuncLSBFirst[32]) (CARD32 *base,
|
|
unsigned int
|
|
**glyphp,
|
|
int line,
|
|
int nglyph,
|
|
int width);
|
|
|
|
extern _X_EXPORT GlyphScanlineFuncPtr
|
|
*XAAGetGlyphScanlineFuncMSBFirstFixedBase(void);
|
|
extern _X_EXPORT GlyphScanlineFuncPtr *XAAGetGlyphScanlineFuncMSBFirst(void);
|
|
extern _X_EXPORT GlyphScanlineFuncPtr
|
|
*XAAGetGlyphScanlineFuncLSBFirstFixedBase(void);
|
|
extern _X_EXPORT GlyphScanlineFuncPtr *XAAGetGlyphScanlineFuncLSBFirst(void);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandRectsLSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandRects3LSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandRectsLSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandRects3LSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandRectsMSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandRects3MSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandRectsMSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandRects3MSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillScanlineColorExpandRectsLSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillScanlineColorExpandRects3LSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillScanlineColorExpandRectsMSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillScanlineColorExpandRects3MSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int nBox,
|
|
BoxPtr pBox,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandSpansLSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandSpans3LSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandSpansLSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandSpans3LSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandSpansMSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandSpans3MSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandSpansMSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColorExpandSpans3MSBFirstFixedBase(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillScanlineColorExpandSpansLSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillScanlineColorExpandSpans3LSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAPutImage(DrawablePtr pDraw,
|
|
GCPtr pGC,
|
|
int depth,
|
|
int x, int y, int w, int h, int leftPad, int format, char *pImage);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillScanlineColorExpandSpansMSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillScanlineColorExpandSpans3MSBFirst(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted,
|
|
int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT CARD32 *(*XAAStippleScanlineFuncMSBFirstFixedBase[6]) (CARD32
|
|
*base,
|
|
CARD32
|
|
*src,
|
|
int
|
|
offset,
|
|
int
|
|
width,
|
|
int
|
|
dwords);
|
|
|
|
extern _X_EXPORT CARD32 *(*XAAStippleScanlineFuncMSBFirst[6]) (CARD32 *base,
|
|
CARD32 *src,
|
|
int offset,
|
|
int width,
|
|
int dwords);
|
|
|
|
extern _X_EXPORT CARD32 *(*XAAStippleScanlineFuncLSBFirstFixedBase[6]) (CARD32
|
|
*base,
|
|
CARD32
|
|
*src,
|
|
int
|
|
offset,
|
|
int
|
|
width,
|
|
int
|
|
dwords);
|
|
|
|
extern _X_EXPORT CARD32 *(*XAAStippleScanlineFuncLSBFirst[6]) (CARD32 *base,
|
|
CARD32 *src,
|
|
int offset,
|
|
int width,
|
|
int dwords);
|
|
|
|
extern _X_EXPORT StippleScanlineProcPtr
|
|
*XAAGetStippleScanlineFuncMSBFirstFixedBase(void);
|
|
extern _X_EXPORT StippleScanlineProcPtr
|
|
*XAAGetStippleScanlineFuncMSBFirst(void);
|
|
extern _X_EXPORT StippleScanlineProcPtr
|
|
*XAAGetStippleScanlineFuncLSBFirstFixedBase(void);
|
|
extern _X_EXPORT StippleScanlineProcPtr
|
|
*XAAGetStippleScanlineFuncLSBFirst(void);
|
|
extern _X_EXPORT StippleScanlineProcPtr
|
|
*XAAGetStippleScanlineFunc3MSBFirstFixedBase(void);
|
|
extern _X_EXPORT StippleScanlineProcPtr
|
|
*XAAGetStippleScanlineFunc3MSBFirst(void);
|
|
extern _X_EXPORT StippleScanlineProcPtr
|
|
*XAAGetStippleScanlineFunc3LSBFirstFixedBase(void);
|
|
extern _X_EXPORT StippleScanlineProcPtr
|
|
*XAAGetStippleScanlineFunc3LSBFirst(void);
|
|
|
|
extern _X_EXPORT int
|
|
|
|
XAAPolyText8TEColorExpansion(DrawablePtr pDraw,
|
|
GCPtr pGC, int x, int y, int count, char *chars);
|
|
|
|
extern _X_EXPORT int
|
|
|
|
XAAPolyText16TEColorExpansion(DrawablePtr pDraw,
|
|
GCPtr pGC,
|
|
int x, int y, int count, unsigned short *chars);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAImageText8TEColorExpansion(DrawablePtr pDraw,
|
|
GCPtr pGC, int x, int y, int count, char *chars);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAImageText16TEColorExpansion(DrawablePtr pDraw,
|
|
GCPtr pGC,
|
|
int x, int y, int count, unsigned short *chars);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAImageGlyphBltTEColorExpansion(DrawablePtr pDrawable,
|
|
GCPtr pGC,
|
|
int xInit, int yInit,
|
|
unsigned int nglyph,
|
|
CharInfoPtr * ppci, pointer pglyphBase);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAPolyGlyphBltTEColorExpansion(DrawablePtr pDrawable,
|
|
GCPtr pGC,
|
|
int xInit, int yInit,
|
|
unsigned int nglyph,
|
|
CharInfoPtr * ppci, pointer pglyphBase);
|
|
|
|
extern _X_EXPORT int
|
|
|
|
XAAPolyText8NonTEColorExpansion(DrawablePtr pDraw,
|
|
GCPtr pGC,
|
|
int x, int y, int count, char *chars);
|
|
|
|
extern _X_EXPORT int
|
|
|
|
XAAPolyText16NonTEColorExpansion(DrawablePtr pDraw,
|
|
GCPtr pGC,
|
|
int x, int y,
|
|
int count, unsigned short *chars);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAImageText8NonTEColorExpansion(DrawablePtr pDraw,
|
|
GCPtr pGC,
|
|
int x, int y, int count, char *chars);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAImageText16NonTEColorExpansion(DrawablePtr pDraw,
|
|
GCPtr pGC,
|
|
int x, int y,
|
|
int count, unsigned short *chars);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAImageGlyphBltNonTEColorExpansion(DrawablePtr pDrawable,
|
|
GCPtr pGC,
|
|
int xInit, int yInit,
|
|
unsigned int nglyph,
|
|
CharInfoPtr * ppci, pointer pglyphBase);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAPolyGlyphBltNonTEColorExpansion(DrawablePtr pDrawable,
|
|
GCPtr pGC,
|
|
int xInit, int yInit,
|
|
unsigned int nglyph,
|
|
CharInfoPtr * ppci, pointer pglyphBase);
|
|
|
|
extern _X_EXPORT void XAANonTEGlyphRenderer(ScrnInfoPtr pScrn,
|
|
int x, int y, int n,
|
|
NonTEGlyphPtr glyphs,
|
|
BoxPtr pbox,
|
|
int fg, int rop,
|
|
unsigned int planemask);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillSolidSpans(ScrnInfoPtr pScrn,
|
|
int fg, int rop,
|
|
unsigned int planemask,
|
|
int n, DDXPointPtr ppt, int *pwidth, int fSorted);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillMono8x8PatternSpans(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth, int fSorted,
|
|
int patx, int paty, int xorg, int yorg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillMono8x8PatternSpansScreenOrigin(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth, int fSorted,
|
|
int patx, int paty, int xorg, int yorg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColor8x8PatternSpansScreenOrigin(ScrnInfoPtr pScrn,
|
|
int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth, int fSorted,
|
|
XAACacheInfoPtr,
|
|
int xorigin, int yorigin);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillColor8x8PatternSpans(ScrnInfoPtr pScrn,
|
|
int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth, int fSorted,
|
|
XAACacheInfoPtr, int xorigin, int yorigin);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillCacheBltSpans(ScrnInfoPtr pScrn,
|
|
int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr points,
|
|
int *widths,
|
|
int fSorted, XAACacheInfoPtr pCache, int xorg, int yorg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillCacheExpandSpans(ScrnInfoPtr pScrn,
|
|
int fg, int bg, int rop,
|
|
unsigned int planemask,
|
|
int n,
|
|
DDXPointPtr ppt,
|
|
int *pwidth,
|
|
int fSorted, int xorg, int yorg, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillSpans(DrawablePtr pDrawable,
|
|
GC * pGC,
|
|
int nInit, DDXPointPtr pptInit, int *pwidth, int fSorted);
|
|
|
|
extern _X_EXPORT void
|
|
XAAInitPixmapCache(ScreenPtr pScreen, RegionPtr areas, pointer data);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapToCache(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src, int srcwidth, int fg, int bg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteBitmapToCacheLinear(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src, int srcwidth, int fg, int bg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWritePixmapToCache(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src, int srcwidth, int bpp, int depth);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWritePixmapToCacheLinear(ScrnInfoPtr pScrn,
|
|
int x, int y, int w, int h,
|
|
unsigned char *src,
|
|
int srcwidth, int bpp, int depth);
|
|
|
|
extern _X_EXPORT void
|
|
XAASolidHorVertLineAsRects(ScrnInfoPtr pScrn, int x, int y, int len, int dir);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAASolidHorVertLineAsTwoPoint(ScrnInfoPtr pScrn,
|
|
int x, int y, int len, int dir);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAASolidHorVertLineAsBresenham(ScrnInfoPtr pScrn,
|
|
int x, int y, int len, int dir);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAPolyRectangleThinSolid(DrawablePtr pDrawable,
|
|
GCPtr pGC, int nRectsInit, xRectangle *pRectsInit);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAPolylinesWideSolid(DrawablePtr pDrawable,
|
|
GCPtr pGC, int mode, int npt, DDXPointPtr pPts);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillPolygonSolid(DrawablePtr pDrawable,
|
|
GCPtr pGC,
|
|
int shape, int mode, int count, DDXPointPtr ptsIn);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillPolygonStippled(DrawablePtr pDrawable,
|
|
GCPtr pGC,
|
|
int shape, int mode, int count, DDXPointPtr ptsIn);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillPolygonTiled(DrawablePtr pDrawable,
|
|
GCPtr pGC,
|
|
int shape, int mode, int count, DDXPointPtr ptsIn);
|
|
|
|
extern _X_EXPORT int
|
|
|
|
XAAIsEasyPolygon(DDXPointPtr ptsIn,
|
|
int count,
|
|
BoxPtr extents,
|
|
int origin,
|
|
DDXPointPtr * topPoint, int *topY, int *bottomY, int shape);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAFillPolygonHelper(ScrnInfoPtr pScrn,
|
|
DDXPointPtr ptsIn,
|
|
int count,
|
|
DDXPointPtr topPoint,
|
|
int y,
|
|
int maxy,
|
|
int origin,
|
|
RectFuncPtr RectFunc,
|
|
TrapFuncPtr TrapFunc,
|
|
int xorg, int yorg, XAACacheInfoPtr pCache);
|
|
|
|
extern _X_EXPORT void
|
|
XAAPolySegment(DrawablePtr pDrawable, GCPtr pGC, int nseg, xSegment * pSeg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAPolyLines(DrawablePtr pDrawable,
|
|
GCPtr pGC, int mode, int npt, DDXPointPtr pptInit);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAPolySegmentDashed(DrawablePtr pDrawable,
|
|
GCPtr pGC, int nseg, xSegment * pSeg);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAPolyLinesDashed(DrawablePtr pDrawable,
|
|
GCPtr pGC, int mode, int npt, DDXPointPtr pptInit);
|
|
|
|
extern _X_EXPORT void
|
|
XAAWriteMono8x8PatternToCache(ScrnInfoPtr pScrn, XAACacheInfoPtr pCache);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAWriteColor8x8PatternToCache(ScrnInfoPtr pScrn,
|
|
PixmapPtr pPix, XAACacheInfoPtr pCache);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAARotateMonoPattern(int *pat0, int *pat1,
|
|
int xoffset, int yoffset, Bool msbfirst);
|
|
|
|
extern _X_EXPORT void XAAComputeDash(GCPtr pGC);
|
|
|
|
extern _X_EXPORT void XAAMoveDWORDS_FixedBase(register CARD32 *dest,
|
|
register CARD32 *src,
|
|
register int dwords);
|
|
|
|
extern _X_EXPORT void XAAMoveDWORDS_FixedSrc(register CARD32 *dest,
|
|
register CARD32 *src,
|
|
register int dwords);
|
|
|
|
extern _X_EXPORT void XAAMoveDWORDS(register CARD32 *dest,
|
|
register CARD32 *src, register int dwords);
|
|
|
|
extern _X_EXPORT int
|
|
|
|
XAAGetRectClipBoxes(GCPtr pGC,
|
|
BoxPtr pboxClippedBase,
|
|
int nrectFill, xRectangle *prectInit);
|
|
|
|
extern _X_EXPORT void
|
|
XAASetupOverlay8_32Planar(ScreenPtr);
|
|
|
|
extern _X_EXPORT void
|
|
XAAPolyFillArcSolid(DrawablePtr pDraw, GCPtr pGC, int narcs, xArc * parcs);
|
|
|
|
extern _X_EXPORT XAACacheInfoPtr XAACacheTile(ScrnInfoPtr Scrn, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT XAACacheInfoPtr
|
|
XAACacheMonoStipple(ScrnInfoPtr Scrn, PixmapPtr pPix);
|
|
|
|
extern _X_EXPORT XAACacheInfoPtr
|
|
XAACachePlanarMonoStipple(ScrnInfoPtr Scrn, PixmapPtr pPix);
|
|
|
|
typedef XAACacheInfoPtr(*XAACachePlanarMonoStippleProc) (ScrnInfoPtr,
|
|
PixmapPtr);
|
|
extern _X_EXPORT XAACachePlanarMonoStippleProc
|
|
XAAGetCachePlanarMonoStipple(void);
|
|
|
|
extern _X_EXPORT XAACacheInfoPtr
|
|
XAACacheStipple(ScrnInfoPtr Scrn, PixmapPtr pPix, int fg, int bg);
|
|
|
|
extern _X_EXPORT XAACacheInfoPtr
|
|
XAACacheMono8x8Pattern(ScrnInfoPtr Scrn, int pat0, int pat1);
|
|
|
|
extern _X_EXPORT XAACacheInfoPtr
|
|
XAACacheColor8x8Pattern(ScrnInfoPtr Scrn, PixmapPtr pPix, int fg, int bg);
|
|
|
|
extern _X_EXPORT void
|
|
XAATileCache(ScrnInfoPtr pScrn, XAACacheInfoPtr pCache, int w, int h);
|
|
|
|
extern _X_EXPORT void XAAClosePixmapCache(ScreenPtr pScreen);
|
|
void XAAInvalidatePixmapCache(ScreenPtr pScreen);
|
|
|
|
extern _X_EXPORT Bool XAACheckStippleReducibility(PixmapPtr pPixmap);
|
|
extern _X_EXPORT Bool XAACheckTileReducibility(PixmapPtr pPixmap,
|
|
Bool checkMono);
|
|
|
|
extern _X_EXPORT int XAAStippledFillChooser(GCPtr pGC);
|
|
extern _X_EXPORT int XAAOpaqueStippledFillChooser(GCPtr pGC);
|
|
extern _X_EXPORT int XAATiledFillChooser(GCPtr pGC);
|
|
|
|
extern _X_EXPORT void XAAMoveInOffscreenPixmaps(ScreenPtr pScreen);
|
|
extern _X_EXPORT void XAAMoveOutOffscreenPixmaps(ScreenPtr pScreen);
|
|
extern _X_EXPORT void XAARemoveAreaCallback(FBAreaPtr area);
|
|
extern _X_EXPORT void XAAMoveOutOffscreenPixmap(PixmapPtr pPix);
|
|
extern _X_EXPORT Bool XAAInitStateWrap(ScreenPtr pScreen,
|
|
XAAInfoRecPtr infoRec);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAComposite(CARD8 op,
|
|
PicturePtr pSrc,
|
|
PicturePtr pMask,
|
|
PicturePtr pDst,
|
|
INT16 xSrc,
|
|
INT16 ySrc,
|
|
INT16 xMask,
|
|
INT16 yMask, INT16 xDst, INT16 yDst, CARD16 width, CARD16 height);
|
|
|
|
extern _X_EXPORT Bool
|
|
|
|
XAADoComposite(CARD8 op,
|
|
PicturePtr pSrc,
|
|
PicturePtr pMask,
|
|
PicturePtr pDst,
|
|
INT16 xSrc,
|
|
INT16 ySrc,
|
|
INT16 xMask,
|
|
INT16 yMask,
|
|
INT16 xDst, INT16 yDst, CARD16 width, CARD16 height);
|
|
|
|
extern _X_EXPORT void
|
|
|
|
XAAGlyphs(CARD8 op,
|
|
PicturePtr pSrc,
|
|
PicturePtr pDst,
|
|
PictFormatPtr maskFormat,
|
|
INT16 xSrc,
|
|
INT16 ySrc, int nlist, GlyphListPtr list, GlyphPtr * glyphs);
|
|
|
|
extern _X_EXPORT Bool
|
|
|
|
XAADoGlyphs(CARD8 op,
|
|
PicturePtr pSrc,
|
|
PicturePtr pDst,
|
|
PictFormatPtr maskFormat,
|
|
INT16 xSrc,
|
|
INT16 ySrc, int nlist, GlyphListPtr list, GlyphPtr * glyphs);
|
|
|
|
/* helpers */
|
|
extern _X_EXPORT void
|
|
XAA_888_plus_PICT_a8_to_8888(CARD32 color, CARD8 *alphaPtr, /* in bytes */
|
|
int alphaPitch, CARD32 *dstPtr, int dstPitch, /* in dwords */
|
|
int width, int height);
|
|
|
|
extern _X_EXPORT Bool
|
|
|
|
XAAGetRGBAFromPixel(CARD32 pixel,
|
|
CARD16 *red,
|
|
CARD16 *green, CARD16 *blue, CARD16 *alpha, CARD32 format);
|
|
|
|
extern _X_EXPORT Bool
|
|
|
|
XAAGetPixelFromRGBA(CARD32 *pixel,
|
|
CARD16 red,
|
|
CARD16 green, CARD16 blue, CARD16 alpha, CARD32 format);
|
|
|
|
/* XXX should be static */
|
|
extern _X_EXPORT GCOps XAAFallbackOps;
|
|
extern _X_EXPORT GCOps *XAAGetFallbackOps(void);
|
|
extern _X_EXPORT GCFuncs XAAGCFuncs;
|
|
extern _X_EXPORT DevPrivateKey XAAGetScreenKey(void);
|
|
extern _X_EXPORT DevPrivateKey XAAGetGCKey(void);
|
|
extern _X_EXPORT DevPrivateKey XAAGetPixmapKey(void);
|
|
|
|
extern _X_EXPORT unsigned int XAAShiftMasks[32];
|
|
|
|
extern _X_EXPORT unsigned int byte_expand3[256], byte_reversed_expand3[256];
|
|
|
|
extern _X_EXPORT CARD32 XAAReverseBitOrder(CARD32 data);
|
|
|
|
#define GET_XAASCREENPTR_FROM_SCREEN(pScreen)\
|
|
dixLookupPrivate(&(pScreen)->devPrivates, XAAGetScreenKey())
|
|
|
|
#define GET_XAASCREENPTR_FROM_GC(pGC)\
|
|
dixLookupPrivate(&(pGC)->pScreen->devPrivates, XAAGetScreenKey())
|
|
|
|
#define GET_XAASCREENPTR_FROM_DRAWABLE(pDraw)\
|
|
dixLookupPrivate(&(pDraw)->pScreen->devPrivates, XAAGetScreenKey())
|
|
|
|
#define GET_XAAINFORECPTR_FROM_SCREEN(pScreen)\
|
|
((XAAScreenPtr)dixLookupPrivate(&(pScreen)->devPrivates, XAAGetScreenKey()))->AccelInfoRec
|
|
|
|
#define GET_XAAINFORECPTR_FROM_GC(pGC)\
|
|
((XAAScreenPtr)dixLookupPrivate(&(pGC)->pScreen->devPrivates, XAAGetScreenKey()))->AccelInfoRec
|
|
|
|
#define GET_XAAINFORECPTR_FROM_DRAWABLE(pDraw)\
|
|
((XAAScreenPtr)dixLookupPrivate(&(pDraw)->pScreen->devPrivates, XAAGetScreenKey()))->AccelInfoRec
|
|
|
|
#define GET_XAAINFORECPTR_FROM_SCRNINFOPTR(pScrn)\
|
|
((XAAScreenPtr)dixLookupPrivate(&(pScrn)->pScreen->devPrivates, XAAGetScreenKey()))->AccelInfoRec
|
|
|
|
#define XAA_GET_PIXMAP_PRIVATE(pix)\
|
|
(XAAPixmapPtr)dixLookupPrivate(&(pix)->devPrivates, XAAGetPixmapKey())
|
|
|
|
#define CHECK_RGB_EQUAL(c) (!((((c) >> 8) ^ (c)) & 0xffff))
|
|
|
|
#define CHECK_FG(pGC, flags) \
|
|
(!(flags & RGB_EQUAL) || CHECK_RGB_EQUAL(pGC->fgPixel))
|
|
|
|
#define CHECK_BG(pGC, flags) \
|
|
(!(flags & RGB_EQUAL) || CHECK_RGB_EQUAL(pGC->bgPixel))
|
|
|
|
#define CHECK_ROP(pGC, flags) \
|
|
(!(flags & GXCOPY_ONLY) || (pGC->alu == GXcopy))
|
|
|
|
#define CHECK_ROPSRC(pGC, flags) \
|
|
(!(flags & ROP_NEEDS_SOURCE) || ((pGC->alu != GXclear) && \
|
|
(pGC->alu != GXnoop) && (pGC->alu != GXinvert) && \
|
|
(pGC->alu != GXset)))
|
|
|
|
#define CHECK_PLANEMASK(pGC, flags) \
|
|
(!(flags & NO_PLANEMASK) || \
|
|
((pGC->planemask & infoRec->FullPlanemasks[pGC->depth - 1]) == \
|
|
infoRec->FullPlanemasks[pGC->depth - 1]))
|
|
|
|
#define CHECK_COLORS(pGC, flags) \
|
|
(!(flags & RGB_EQUAL) || \
|
|
(CHECK_RGB_EQUAL(pGC->fgPixel) && CHECK_RGB_EQUAL(pGC->bgPixel)))
|
|
|
|
#define CHECK_NO_GXCOPY(pGC, flags) \
|
|
((pGC->alu != GXcopy) || !(flags & NO_GXCOPY) || \
|
|
((pGC->planemask & infoRec->FullPlanemask) != infoRec->FullPlanemask))
|
|
|
|
#define IS_OFFSCREEN_PIXMAP(pPix)\
|
|
((XAA_GET_PIXMAP_PRIVATE((PixmapPtr)(pPix)))->offscreenArea)
|
|
|
|
#define PIXMAP_IS_SHARED(pPix)\
|
|
((XAA_GET_PIXMAP_PRIVATE((PixmapPtr)(pPix)))->flags & SHARED_PIXMAP)
|
|
|
|
#define OFFSCREEN_PIXMAP_LOCKED(pPix)\
|
|
((XAA_GET_PIXMAP_PRIVATE((PixmapPtr)(pPix)))->flags & LOCKED_PIXMAP)
|
|
|
|
#define XAA_DEPTH_BUG(pGC) \
|
|
((pGC->depth == 32) && (pGC->bgPixel == 0xffffffff))
|
|
|
|
#define DELIST_OFFSCREEN_PIXMAP(pPix) { \
|
|
PixmapLinkPtr _pLink, _prev; \
|
|
_pLink = infoRec->OffscreenPixmaps; \
|
|
_prev = NULL; \
|
|
while(_pLink) { \
|
|
if(_pLink->pPix == pPix) { \
|
|
if(_prev) _prev->next = _pLink->next; \
|
|
else infoRec->OffscreenPixmaps = _pLink->next; \
|
|
free(_pLink); \
|
|
break; \
|
|
} \
|
|
_prev = _pLink; \
|
|
_pLink = _pLink->next; \
|
|
}}
|
|
|
|
#define SWAP_BITS_IN_BYTES(v) \
|
|
(((0x01010101 & (v)) << 7) | ((0x02020202 & (v)) << 5) | \
|
|
((0x04040404 & (v)) << 3) | ((0x08080808 & (v)) << 1) | \
|
|
((0x10101010 & (v)) >> 1) | ((0x20202020 & (v)) >> 3) | \
|
|
((0x40404040 & (v)) >> 5) | ((0x80808080 & (v)) >> 7))
|
|
|
|
/*
|
|
* Moved XAAPixmapCachePrivate here from xaaPCache.c, since driver
|
|
* replacements for CacheMonoStipple need access to it
|
|
*/
|
|
|
|
typedef struct {
|
|
int Num512x512;
|
|
int Current512;
|
|
XAACacheInfoPtr Info512;
|
|
int Num256x256;
|
|
int Current256;
|
|
XAACacheInfoPtr Info256;
|
|
int Num128x128;
|
|
int Current128;
|
|
XAACacheInfoPtr Info128;
|
|
int NumMono;
|
|
int CurrentMono;
|
|
XAACacheInfoPtr InfoMono;
|
|
int NumColor;
|
|
int CurrentColor;
|
|
XAACacheInfoPtr InfoColor;
|
|
int NumPartial;
|
|
int CurrentPartial;
|
|
XAACacheInfoPtr InfoPartial;
|
|
DDXPointRec MonoOffsets[64];
|
|
DDXPointRec ColorOffsets[64];
|
|
} XAAPixmapCachePrivate, *XAAPixmapCachePrivatePtr;
|
|
|
|
#endif /* _XAALOCAL_H */
|