xserver-multidpi/hw/xfree86/xaa/xaalocal.h
Paulo Cesar Pereira de Andrade 49f77fff14 Rework symbol visibility for easier maintenance
Save in a few special cases, _X_EXPORT should not be used in C source
files. Instead, it should be used in headers, and the proper C source
include that header. Some special cases are symbols that need to be
shared between modules, but not expected to be used by external drivers,
and symbols that are accessible via LoaderSymbol/dlopen.

  This patch also adds conditionally some new sdk header files, depending
on extensions enabled. These files were added to match pattern for
other extensions/modules, that is, have the headers "deciding" symbol
visibility in the sdk. These headers are:
o Xext/panoramiXsrv.h, Xext/panoramiX.h
o fbpict.h (unconditionally)
o vidmodeproc.h
o mioverlay.h (unconditionally, used only by xaa)
o xfixes.h (unconditionally, symbols required by dri2)

  LoaderSymbol and similar functions now don't have different prototypes,
in loaderProcs.h and xf86Module.h, so that both headers can be included,
without the need of defining IN_LOADER.

  xf86NewInputDevice() device prototype readded to xf86Xinput.h, but
not exported (and with a comment about it).
2008-12-03 05:43:34 -02:00

1763 lines
38 KiB
C

#ifndef _XAALOCAL_H
#define _XAALOCAL_H
/* This file is very unorganized ! */
#include "gcstruct.h"
#include "regionstr.h"
#include "xf86fbman.h"
#include "xaa.h"
#include "mi.h"
#ifdef RENDER
#include "picturestr.h"
#endif
#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)(int, int);
void (*LeaveVT)(int, int);
int (*SetDGAMode)(int, int, DGADevicePtr);
void (*EnableDisableFBAccess)(int, Bool);
#ifdef RENDER
CompositeProcPtr Composite;
GlyphsProcPtr Glyphs;
#endif
} 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);
#ifdef RENDER
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
);
#endif
/* 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; \
xfree(_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 */