xf86dga.h
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:6k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. /*
  2.    Copyright (c) 1999  XFree86 Inc
  3. */
  4. /* $XFree86: xc/include/extensions/xf86dga.h,v 3.21 2001/08/01 00:44:36 tsi Exp $ */
  5. #ifndef _XF86DGA_H_
  6. #define _XF86DGA_H_
  7. #include <X11/Xfuncproto.h>
  8. #include <XFree86/extensions/xf86dga1.h>
  9. #include "SDL_name.h"
  10. #define X_XDGAQueryVersion 0
  11. /* 1 through 9 are in xf86dga1.h */
  12. /* 10 and 11 are reserved to avoid conflicts with rogue DGA extensions */
  13. #define X_XDGAQueryModes 12
  14. #define X_XDGASetMode 13
  15. #define X_XDGASetViewport 14
  16. #define X_XDGAInstallColormap 15
  17. #define X_XDGASelectInput 16
  18. #define X_XDGAFillRectangle 17
  19. #define X_XDGACopyArea 18
  20. #define X_XDGACopyTransparentArea 19
  21. #define X_XDGAGetViewportStatus 20
  22. #define X_XDGASync 21
  23. #define X_XDGAOpenFramebuffer 22
  24. #define X_XDGACloseFramebuffer 23
  25. #define X_XDGASetClientVersion 24
  26. #define X_XDGAChangePixmapMode 25
  27. #define X_XDGACreateColormap 26
  28. #define XDGAConcurrentAccess 0x00000001
  29. #define XDGASolidFillRect 0x00000002
  30. #define XDGABlitRect 0x00000004
  31. #define XDGABlitTransRect 0x00000008
  32. #define XDGAPixmap     0x00000010
  33. #define XDGAInterlaced          0x00010000
  34. #define XDGADoublescan          0x00020000
  35. #define XDGAFlipImmediate 0x00000001
  36. #define XDGAFlipRetrace 0x00000002
  37. #define XDGANeedRoot 0x00000001
  38. #define XF86DGANumberEvents 7
  39. #define XDGAPixmapModeLarge 0
  40. #define XDGAPixmapModeSmall 1
  41. #define XF86DGAClientNotLocal 0
  42. #define XF86DGANoDirectVideoMode 1
  43. #define XF86DGAScreenNotActive 2
  44. #define XF86DGADirectNotActivated 3
  45. #define XF86DGAOperationNotSupported 4
  46. #define XF86DGANumberErrors (XF86DGAOperationNotSupported + 1)
  47. typedef struct {
  48.    int num; /* A unique identifier for the mode (num > 0) */
  49.    char *name; /* name of mode given in the XF86Config */
  50.    float verticalRefresh;
  51.    int flags; /* DGA_CONCURRENT_ACCESS, etc... */
  52.    int imageWidth; /* linear accessible portion (pixels) */
  53.    int imageHeight;
  54.    int pixmapWidth; /* Xlib accessible portion (pixels) */
  55.    int pixmapHeight; /* both fields ignored if no concurrent access */
  56.    int bytesPerScanline; 
  57.    int byteOrder; /* MSBFirst, LSBFirst */
  58.    int depth;
  59.    int bitsPerPixel;
  60.    unsigned long redMask;
  61.    unsigned long greenMask;
  62.    unsigned long blueMask;
  63.    short visualClass;
  64.    int viewportWidth;
  65.    int viewportHeight;
  66.    int xViewportStep; /* viewport position granularity */
  67.    int yViewportStep;
  68.    int maxViewportX; /* max viewport origin */
  69.    int maxViewportY;
  70.    int viewportFlags; /* types of page flipping possible */
  71.    int reserved1;
  72.    int reserved2;
  73. } SDL_NAME(XDGAMode);
  74. typedef struct {
  75.    SDL_NAME(XDGAMode) mode;
  76.    unsigned char *data;
  77.    Pixmap pixmap;
  78. } SDL_NAME(XDGADevice);
  79. #ifndef _XF86DGA_SERVER_
  80. _XFUNCPROTOBEGIN
  81. typedef struct {
  82.    int type;
  83.    unsigned long serial;
  84.    Display *display;
  85.    int screen;
  86.    Time time;
  87.    unsigned int state;
  88.    unsigned int button;
  89. } SDL_NAME(XDGAButtonEvent);
  90. typedef struct {
  91.    int type;
  92.    unsigned long serial;
  93.    Display *display;
  94.    int screen;
  95.    Time time;
  96.    unsigned int state;
  97.    unsigned int keycode;
  98. } SDL_NAME(XDGAKeyEvent);
  99. typedef struct {
  100.    int type;
  101.    unsigned long serial;
  102.    Display *display;
  103.    int screen;
  104.    Time time;
  105.    unsigned int state;
  106.    int dx;
  107.    int dy;
  108. } SDL_NAME(XDGAMotionEvent);
  109. typedef union {
  110.   int type;
  111.   SDL_NAME(XDGAButtonEvent) xbutton;
  112.   SDL_NAME(XDGAKeyEvent)   xkey;
  113.   SDL_NAME(XDGAMotionEvent) xmotion;
  114.   long   pad[24];
  115. } SDL_NAME(XDGAEvent);
  116. Bool SDL_NAME(XDGAQueryExtension)(
  117.     Display  *dpy,
  118.     int  *eventBase,
  119.     int  *erroBase
  120. );
  121. Bool SDL_NAME(XDGAQueryVersion)(
  122.     Display  *dpy,
  123.     int  *majorVersion,
  124.     int  *minorVersion
  125. );
  126. SDL_NAME(XDGAMode)* SDL_NAME(XDGAQueryModes)(
  127.     Display *dpy,
  128.     int  screen,
  129.     int *num
  130. );
  131. SDL_NAME(XDGADevice)* SDL_NAME(XDGASetMode)(
  132.     Display *dpy,
  133.     int screen,
  134.     int mode
  135. );
  136. Bool SDL_NAME(XDGAOpenFramebuffer)(
  137.     Display *dpy,
  138.     int  screen
  139. );
  140. void SDL_NAME(XDGACloseFramebuffer)(
  141.     Display *dpy,
  142.     int screen
  143. );
  144. void SDL_NAME(XDGASetViewport)(
  145.     Display *dpy,
  146.     int screen,
  147.     int x,
  148.     int y,
  149.     int flags
  150. );
  151. void SDL_NAME(XDGAInstallColormap)(
  152.     Display *dpy,
  153.     int screen,
  154.     Colormap cmap
  155. );
  156. Colormap SDL_NAME(XDGACreateColormap)(
  157.     Display *dpy,
  158.     int  screen,
  159.     SDL_NAME(XDGADevice)  *device,
  160.     int  alloc
  161. );
  162. void SDL_NAME(XDGASelectInput)(
  163.     Display *dpy,
  164.     int screen,
  165.     long event_mask
  166. );
  167. void SDL_NAME(XDGAFillRectangle)(
  168.     Display *dpy,
  169.     int screen,
  170.     int x,
  171.     int y,
  172.     unsigned int width,
  173.     unsigned int height,
  174.     unsigned long color
  175. );
  176. void SDL_NAME(XDGACopyArea)(
  177.     Display *dpy,
  178.     int screen,
  179.     int srcx,
  180.     int srcy,
  181.     unsigned int width,
  182.     unsigned int height,
  183.     int dstx,
  184.     int dsty
  185. );
  186. void SDL_NAME(XDGACopyTransparentArea)(
  187.     Display *dpy,
  188.     int screen,
  189.     int srcx,
  190.     int srcy,
  191.     unsigned int width,
  192.     unsigned int height,
  193.     int dstx,
  194.     int dsty,
  195.     unsigned long key
  196. );
  197. int SDL_NAME(XDGAGetViewportStatus)(
  198.     Display *dpy,
  199.     int screen
  200. );
  201.    
  202. void SDL_NAME(XDGASync)(
  203.     Display *dpy,
  204.     int screen
  205. );
  206. Bool SDL_NAME(XDGASetClientVersion)(
  207.     Display *dpy
  208. );
  209. void SDL_NAME(XDGAChangePixmapMode)(
  210.     Display  *dpy,
  211.     int screen,
  212.     int *x,
  213.     int *y,
  214.     int mode
  215. );
  216. void SDL_NAME(XDGAKeyEventToXKeyEvent)(SDL_NAME(XDGAKeyEvent)* dk, XKeyEvent* xk);
  217. _XFUNCPROTOEND
  218. #endif /* _XF86DGA_SERVER_ */
  219. #endif /* _XF86DGA_H_ */