Home | History | Annotate | Line # | Download | only in extensions
      1 /*
      2    Copyright (c) 1999  XFree86 Inc
      3 */
      4 
      5 #ifndef _XF86DGACONST_H_
      6 #define _XF86DGACONST_H_
      7 
      8 #include <X11/extensions/xf86dga1const.h>
      9 
     10 #define X_XDGAQueryVersion		0
     11 
     12 /* 1 through 9 are in xf86dga1.h */
     13 
     14 /* 10 and 11 are reserved to avoid conflicts with rogue DGA extensions */
     15 
     16 #define X_XDGAQueryModes		12
     17 #define X_XDGASetMode			13
     18 #define X_XDGASetViewport		14
     19 #define X_XDGAInstallColormap		15
     20 #define X_XDGASelectInput		16
     21 #define X_XDGAFillRectangle		17
     22 #define X_XDGACopyArea			18
     23 #define X_XDGACopyTransparentArea	19
     24 #define X_XDGAGetViewportStatus		20
     25 #define X_XDGASync			21
     26 #define X_XDGAOpenFramebuffer		22
     27 #define X_XDGACloseFramebuffer		23
     28 #define X_XDGASetClientVersion		24
     29 #define X_XDGAChangePixmapMode		25
     30 #define X_XDGACreateColormap		26
     31 
     32 
     33 #define XDGAConcurrentAccess	0x00000001
     34 #define XDGASolidFillRect	0x00000002
     35 #define XDGABlitRect		0x00000004
     36 #define XDGABlitTransRect	0x00000008
     37 #define XDGAPixmap    		0x00000010
     38 
     39 #define XDGAInterlaced          0x00010000
     40 #define XDGADoublescan          0x00020000
     41 
     42 #define XDGAFlipImmediate	0x00000001
     43 #define XDGAFlipRetrace		0x00000002
     44 
     45 #define XDGANeedRoot		0x00000001
     46 
     47 #define XF86DGANumberEvents		7
     48 
     49 #define XDGAPixmapModeLarge		0
     50 #define XDGAPixmapModeSmall		1
     51 
     52 #define XF86DGAClientNotLocal		0
     53 #define XF86DGANoDirectVideoMode	1
     54 #define XF86DGAScreenNotActive		2
     55 #define XF86DGADirectNotActivated	3
     56 #define XF86DGAOperationNotSupported	4
     57 #define XF86DGANumberErrors		(XF86DGAOperationNotSupported + 1)
     58 
     59 
     60 typedef struct {
     61    int num;		/* A unique identifier for the mode (num > 0) */
     62    char *name;		/* name of mode given in the XF86Config */
     63    float verticalRefresh;
     64    int flags;		/* DGA_CONCURRENT_ACCESS, etc... */
     65    int imageWidth;	/* linear accessible portion (pixels) */
     66    int imageHeight;
     67    int pixmapWidth;	/* Xlib accessible portion (pixels) */
     68    int pixmapHeight;	/* both fields ignored if no concurrent access */
     69    int bytesPerScanline;
     70    int byteOrder;	/* MSBFirst, LSBFirst */
     71    int depth;
     72    int bitsPerPixel;
     73    unsigned long redMask;
     74    unsigned long greenMask;
     75    unsigned long blueMask;
     76    short visualClass;
     77    int viewportWidth;
     78    int viewportHeight;
     79    int xViewportStep;	/* viewport position granularity */
     80    int yViewportStep;
     81    int maxViewportX;	/* max viewport origin */
     82    int maxViewportY;
     83    int viewportFlags;	/* types of page flipping possible */
     84    int reserved1;
     85    int reserved2;
     86 } XDGAMode;
     87 
     88 
     89 typedef struct {
     90    XDGAMode mode;
     91    unsigned char *data;
     92    Pixmap pixmap;
     93 } XDGADevice;
     94 
     95 
     96 #endif /* _XF86DGACONST_H_ */
     97