compositeproto.h
上传用户:lctgjx
上传日期:2022-06-04
资源大小:8887k
文件大小:6k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. /*
  2.  * $Id: compositeproto.h,v 1.4 2004/07/08 07:20:55 keithp Exp $
  3.  *
  4.  *
  5.  * Copyright © 2006 Sun Microsystems
  6.  *
  7.  * Permission to use, copy, modify, distribute, and sell this software and its
  8.  * documentation for any purpose is hereby granted without fee, provided that
  9.  * the above copyright notice appear in all copies and that both that
  10.  * copyright notice and this permission notice appear in supporting
  11.  * documentation, and that the name of Sun Microsystems not be used in
  12.  * advertising or publicity pertaining to distribution of the software without
  13.  * specific, written prior permission.  Sun Microsystems makes no
  14.  * representations about the suitability of this software for any purpose.  It
  15.  * is provided "as is" without express or implied warranty.
  16.  *
  17.  * SUN MICROSYSTEMS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
  18.  * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
  19.  * EVENT SHALL SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  20.  * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
  21.  * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  22.  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  23.  * PERFORMANCE OF THIS SOFTWARE.
  24.  *
  25.  * Copyright © 2003 Keith Packard
  26.  *
  27.  * Permission to use, copy, modify, distribute, and sell this software and its
  28.  * documentation for any purpose is hereby granted without fee, provided that
  29.  * the above copyright notice appear in all copies and that both that
  30.  * copyright notice and this permission notice appear in supporting
  31.  * documentation, and that the name of Keith Packard not be used in
  32.  * advertising or publicity pertaining to distribution of the software without
  33.  * specific, written prior permission.  Keith Packard makes no
  34.  * representations about the suitability of this software for any purpose.  It
  35.  * is provided "as is" without express or implied warranty.
  36.  *
  37.  * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
  38.  * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
  39.  * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  40.  * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
  41.  * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  42.  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  43.  * PERFORMANCE OF THIS SOFTWARE.
  44.  */
  45. #ifndef _COMPOSITEPROTO_H_
  46. #define _COMPOSITEPROTO_H_
  47. #include <X11/Xmd.h>
  48. #include <X11/extensions/composite.h>
  49. #define Window CARD32
  50. #define Region CARD32
  51. /* 
  52.  * requests and replies
  53.  */
  54. typedef struct {
  55.     CARD8   reqType;
  56.     CARD8   compositeReqType;
  57.     CARD16  length B16;
  58.     CARD32  majorVersion B32;
  59.     CARD32  minorVersion B32;
  60. } xCompositeQueryVersionReq;
  61. #define sz_xCompositeQueryVersionReq   12
  62. typedef struct {
  63.     BYTE    type;   /* X_Reply */
  64.     BYTE    pad1;
  65.     CARD16  sequenceNumber B16;
  66.     CARD32  length B32;
  67.     CARD32  majorVersion B32;
  68.     CARD32  minorVersion B32;
  69.     CARD32  pad2 B32;
  70.     CARD32  pad3 B32;
  71.     CARD32  pad4 B32;
  72.     CARD32  pad5 B32;
  73. } xCompositeQueryVersionReply;
  74. #define sz_xCompositeQueryVersionReply 32
  75. typedef struct {
  76.     CARD8   reqType;
  77.     CARD8   compositeReqType;
  78.     CARD16  length B16;
  79.     Window  window B32;
  80.     CARD8   update;
  81.     CARD8   pad1;
  82.     CARD16  pad2 B16;
  83. } xCompositeRedirectWindowReq;
  84. #define sz_xCompositeRedirectWindowReq 12
  85. typedef struct {
  86.     CARD8   reqType;
  87.     CARD8   compositeReqType;
  88.     CARD16  length B16;
  89.     Window  window B32;
  90.     CARD8   update;
  91.     CARD8   pad1;
  92.     CARD16  pad2 B16;
  93. } xCompositeRedirectSubwindowsReq;
  94. #define sz_xCompositeRedirectSubwindowsReq     12
  95. typedef struct {
  96.     CARD8   reqType;
  97.     CARD8   compositeReqType;
  98.     CARD16  length B16;
  99.     Window  window B32;
  100.     CARD8   update;
  101.     CARD8   pad1;
  102.     CARD16  pad2 B16;
  103. } xCompositeUnredirectWindowReq;
  104. #define sz_xCompositeUnredirectWindowReq    12
  105. typedef struct {
  106.     CARD8   reqType;
  107.     CARD8   compositeReqType;
  108.     CARD16  length B16;
  109.     Window  window B32;
  110.     CARD8   update;
  111.     CARD8   pad1;
  112.     CARD16  pad2 B16;
  113. } xCompositeUnredirectSubwindowsReq;
  114. #define sz_xCompositeUnredirectSubwindowsReq   12
  115. typedef struct {
  116.     CARD8   reqType;
  117.     CARD8   compositeReqType;
  118.     CARD16  length B16;
  119.     Region  region B32;
  120.     Window  window B32;
  121. } xCompositeCreateRegionFromBorderClipReq;
  122. #define sz_xCompositeCreateRegionFromBorderClipReq  12
  123. /* Version 0.2 additions */
  124. typedef struct {
  125.     CARD8   reqType;
  126.     CARD8   compositeReqType;
  127.     CARD16  length;
  128.     Window  window B32;
  129.     Pixmap  pixmap B32;
  130. } xCompositeNameWindowPixmapReq;
  131. #define sz_xCompositeNameWindowPixmapReq     12
  132. /* Version 0.3 additions */
  133. typedef struct {
  134.     CARD8   reqType;
  135.     CARD8   compositeReqType;
  136.     CARD16  length B16;
  137.     Window  window B32;
  138. } xCompositeGetOverlayWindowReq;
  139. #define sz_xCompositeGetOverlayWindowReq sizeof(xCompositeGetOverlayWindowReq)
  140. typedef struct {
  141.     BYTE    type;   /* X_Reply */
  142.     BYTE    pad1;
  143.     CARD16  sequenceNumber B16;
  144.     CARD32  length B32;
  145.     Window  overlayWin B32;
  146.     CARD32  pad2 B32;
  147.     CARD32  pad3 B32;
  148.     CARD32  pad4 B32;
  149.     CARD32  pad5 B32;
  150.     CARD32  pad6 B32;
  151. } xCompositeGetOverlayWindowReply;
  152. #define sz_xCompositeGetOverlayWindowReply sizeof(xCompositeGetOverlayWindowReply)
  153. typedef struct {
  154.     CARD8   reqType;
  155.     CARD8   compositeReqType;
  156.     CARD16  length B16;
  157.     Window  window B32;
  158. } xCompositeReleaseOverlayWindowReq;
  159. #define sz_xCompositeReleaseOverlayWindowReq sizeof(xCompositeReleaseOverlayWindowReq)
  160. #undef Window
  161. #undef Region
  162. #endif /* _COMPOSITEPROTO_H_ */