xenocara/xserver/hw/xfree86/dixmods/extmod/dgaproc.h

143 lines
3.5 KiB
C
Raw Normal View History

2006-11-26 11:13:41 -07:00
#ifndef __DGAPROC_H
#define __DGAPROC_H
#include <X11/Xproto.h>
#include "pixmap.h"
#define DGA_CONCURRENT_ACCESS 0x00000001
#define DGA_FILL_RECT 0x00000002
#define DGA_BLIT_RECT 0x00000004
#define DGA_BLIT_RECT_TRANS 0x00000008
#define DGA_PIXMAP_AVAILABLE 0x00000010
#define DGA_INTERLACED 0x00010000
#define DGA_DOUBLESCAN 0x00020000
#define DGA_FLIP_IMMEDIATE 0x00000001
#define DGA_FLIP_RETRACE 0x00000002
#define DGA_COMPLETED 0x00000000
#define DGA_PENDING 0x00000001
#define DGA_NEED_ROOT 0x00000001
typedef struct {
int num; /* A unique identifier for the mode (num > 0) */
char *name; /* name of mode given in the XF86Config */
int VSync_num;
int VSync_den;
int flags; /* DGA_CONCURRENT_ACCESS, etc... */
int imageWidth; /* linear accessible portion (pixels) */
int imageHeight;
int pixmapWidth; /* Xlib accessible portion (pixels) */
int pixmapHeight; /* both fields ignored if no concurrent access */
int bytesPerScanline;
int byteOrder; /* MSBFirst, LSBFirst */
int depth;
int bitsPerPixel;
unsigned long red_mask;
unsigned long green_mask;
unsigned long blue_mask;
short visualClass;
int viewportWidth;
int viewportHeight;
int xViewportStep; /* viewport position granularity */
int yViewportStep;
int maxViewportX; /* max viewport origin */
int maxViewportY;
int viewportFlags; /* types of page flipping possible */
int offset;
int reserved1;
int reserved2;
} XDGAModeRec, *XDGAModePtr;
/* DDX interface */
extern _X_EXPORT int
2006-11-26 11:13:41 -07:00
DGASetMode(
int Index,
int num,
XDGAModePtr mode,
PixmapPtr *pPix
);
extern _X_EXPORT void
2006-11-26 11:13:41 -07:00
DGASetInputMode(
int Index,
Bool keyboard,
Bool mouse
);
extern _X_EXPORT void
2006-11-26 11:13:41 -07:00
DGASelectInput(
int Index,
ClientPtr client,
long mask
);
extern _X_EXPORT Bool DGAAvailable(int Index);
extern _X_EXPORT Bool DGAActive(int Index);
extern _X_EXPORT void DGAShutdown(void);
extern _X_EXPORT void DGAInstallCmap(ColormapPtr cmap);
extern _X_EXPORT int DGAGetViewportStatus(int Index);
extern _X_EXPORT int DGASync(int Index);
2006-11-26 11:13:41 -07:00
extern _X_EXPORT int
2006-11-26 11:13:41 -07:00
DGAFillRect(
int Index,
int x, int y, int w, int h,
unsigned long color
);
extern _X_EXPORT int
2006-11-26 11:13:41 -07:00
DGABlitRect(
int Index,
int srcx, int srcy,
int w, int h,
int dstx, int dsty
);
extern _X_EXPORT int
2006-11-26 11:13:41 -07:00
DGABlitTransRect(
int Index,
int srcx, int srcy,
int w, int h,
int dstx, int dsty,
unsigned long color
);
extern _X_EXPORT int
2006-11-26 11:13:41 -07:00
DGASetViewport(
int Index,
int x, int y,
int mode
);
extern _X_EXPORT int DGAGetModes(int Index);
extern _X_EXPORT int DGAGetOldDGAMode(int Index);
2006-11-26 11:13:41 -07:00
extern _X_EXPORT int DGAGetModeInfo(int Index, XDGAModePtr mode, int num);
2006-11-26 11:13:41 -07:00
extern _X_EXPORT Bool DGAVTSwitch(void);
extern _X_EXPORT Bool DGAStealButtonEvent(DeviceIntPtr dev, int Index, int button,
int is_down);
extern _X_EXPORT Bool DGAStealMotionEvent(DeviceIntPtr dev, int Index, int dx, int dy);
extern _X_EXPORT Bool DGAStealKeyEvent(DeviceIntPtr dev, int Index, int key_code, int is_down);
2006-11-26 11:13:41 -07:00
extern _X_EXPORT Bool DGAOpenFramebuffer(int Index, char **name, unsigned char **mem,
2006-11-26 11:13:41 -07:00
int *size, int *offset, int *flags);
extern _X_EXPORT void DGACloseFramebuffer(int Index);
extern _X_EXPORT Bool DGAChangePixmapMode(int Index, int *x, int *y, int mode);
extern _X_EXPORT int DGACreateColormap(int Index, ClientPtr client, int id, int mode,
2006-11-26 11:13:41 -07:00
int alloc);
extern _X_EXPORT unsigned char DGAReqCode;
extern _X_EXPORT int DGAErrorBase;
extern _X_EXPORT int DGAEventBase;
extern _X_EXPORT int *XDGAEventBase;
2006-11-26 11:13:41 -07:00
#endif /* __DGAPROC_H */