From 3744281b9ae8aa0ab86ceaee1afe8a603e3aeb2c Mon Sep 17 00:00:00 2001 From: marha Date: Mon, 19 Nov 2012 10:16:38 +0100 Subject: dos -> unix --- X11/extensions/syncproto.h | 948 ++++++++++++++++++++++----------------------- 1 file changed, 474 insertions(+), 474 deletions(-) (limited to 'X11/extensions/syncproto.h') diff --git a/X11/extensions/syncproto.h b/X11/extensions/syncproto.h index ab7c1f528..1453e4401 100644 --- a/X11/extensions/syncproto.h +++ b/X11/extensions/syncproto.h @@ -1,474 +1,474 @@ -/* - -Copyright 1991, 1993, 1994, 1998 The Open Group - -Permission to use, copy, modify, distribute, and sell this software and its -documentation for any purpose is hereby granted without fee, provided that -the above copyright notice appear in all copies and that both that -copyright notice and this permission notice appear in supporting -documentation. - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of The Open Group shall not be -used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization from The Open Group. - -*/ - -/*********************************************************** -Copyright 1991,1993 by Digital Equipment Corporation, Maynard, Massachusetts, -and Olivetti Research Limited, Cambridge, England. - - All Rights Reserved - -Permission to use, copy, modify, and distribute this software and its -documentation for any purpose and without fee is hereby granted, -provided that the above copyright notice appear in all copies and that -both that copyright notice and this permission notice appear in -supporting documentation, and that the names of Digital or Olivetti -not be used in advertising or publicity pertaining to distribution of the -software without specific, written prior permission. - -DIGITAL AND OLIVETTI DISCLAIM ALL WARRANTIES WITH REGARD TO THIS -SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -FITNESS, IN NO EVENT SHALL THEY BE LIABLE FOR ANY SPECIAL, INDIRECT OR -CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF -USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. - -******************************************************************/ - -#ifndef _SYNCPROTO_H_ -#define _SYNCPROTO_H_ - -#include - -#define X_SyncInitialize 0 -#define X_SyncListSystemCounters 1 -#define X_SyncCreateCounter 2 -#define X_SyncSetCounter 3 -#define X_SyncChangeCounter 4 -#define X_SyncQueryCounter 5 -#define X_SyncDestroyCounter 6 -#define X_SyncAwait 7 -#define X_SyncCreateAlarm 8 -#define X_SyncChangeAlarm 9 -#define X_SyncQueryAlarm 10 -#define X_SyncDestroyAlarm 11 -#define X_SyncSetPriority 12 -#define X_SyncGetPriority 13 -#define X_SyncCreateFence 14 -#define X_SyncTriggerFence 15 -#define X_SyncResetFence 16 -#define X_SyncDestroyFence 17 -#define X_SyncQueryFence 18 -#define X_SyncAwaitFence 19 - -/* cover up types from sync.h to make sure they're the right size for - * protocol packaging. These will be undef'ed after all the protocol - * structures are defined. - */ -#define XSyncCounter CARD32 -#define XSyncAlarm CARD32 -#define XSyncFence CARD32 -#define Drawable CARD32 - -/* - * Initialize - */ -typedef struct _xSyncInitialize { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - CARD8 majorVersion; - CARD8 minorVersion; - CARD16 pad B16; -} xSyncInitializeReq; -#define sz_xSyncInitializeReq 8 - -typedef struct { - BYTE type; - CARD8 unused; - CARD16 sequenceNumber B16; - CARD32 length B32; - CARD8 majorVersion; - CARD8 minorVersion; - CARD16 pad B16; - CARD32 pad0 B32; - CARD32 pad1 B32; - CARD32 pad2 B32; - CARD32 pad3 B32; - CARD32 pad4 B32; -} xSyncInitializeReply; -#define sz_xSyncInitializeReply 32 - -/* - * ListSystemCounters - */ -typedef struct _xSyncListSystemCounters -{ - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; -} xSyncListSystemCountersReq; -#define sz_xSyncListSystemCountersReq 4 - -typedef struct { - BYTE type; - CARD8 unused; - CARD16 sequenceNumber B16; - CARD32 length B32; - INT32 nCounters B32; - CARD32 pad0 B32; - CARD32 pad1 B32; - CARD32 pad2 B32; - CARD32 pad3 B32; - CARD32 pad4 B32; -} xSyncListSystemCountersReply; -#define sz_xSyncListSystemCountersReply 32 - -typedef struct { - XSyncCounter counter B32; - INT32 resolution_hi B32; - CARD32 resolution_lo B32; - CARD16 name_length B16; -} xSyncSystemCounter; -#define sz_xSyncSystemCounter 14 - -/* - * Create Counter - */ -typedef struct _xSyncCreateCounterReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncCounter cid B32; - INT32 initial_value_hi B32; - CARD32 initial_value_lo B32; -} xSyncCreateCounterReq; -#define sz_xSyncCreateCounterReq 16 - -/* - * Change Counter - */ -typedef struct _xSyncChangeCounterReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncCounter cid B32; - INT32 value_hi B32; - CARD32 value_lo B32; -} xSyncChangeCounterReq; -#define sz_xSyncChangeCounterReq 16 - -/* - * Set Counter - */ -typedef struct _xSyncSetCounterReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncCounter cid B32; - INT32 value_hi B32; - CARD32 value_lo B32; -} xSyncSetCounterReq; -#define sz_xSyncSetCounterReq 16 - -/* - * Destroy Counter - */ -typedef struct _xSyncDestroyCounterReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncCounter counter B32; -} xSyncDestroyCounterReq; -#define sz_xSyncDestroyCounterReq 8 - -/* - * Query Counter - */ -typedef struct _xSyncQueryCounterReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncCounter counter B32; -} xSyncQueryCounterReq; -#define sz_xSyncQueryCounterReq 8 - - -typedef struct { - BYTE type; - CARD8 unused; - CARD16 sequenceNumber B16; - CARD32 length B32; - INT32 value_hi B32; - CARD32 value_lo B32; - CARD32 pad0 B32; - CARD32 pad1 B32; - CARD32 pad2 B32; - CARD32 pad3 B32; -} xSyncQueryCounterReply; -#define sz_xSyncQueryCounterReply 32 - -/* - * Await - */ -typedef struct _xSyncAwaitReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; -} xSyncAwaitReq; -#define sz_xSyncAwaitReq 4 - -typedef struct _xSyncWaitCondition { - XSyncCounter counter B32; - CARD32 value_type B32; - INT32 wait_value_hi B32; - CARD32 wait_value_lo B32; - CARD32 test_type B32; - INT32 event_threshold_hi B32; - CARD32 event_threshold_lo B32; -} xSyncWaitCondition; -#define sz_xSyncWaitCondition 28 - -/* - * Create Alarm - */ -typedef struct _xSyncCreateAlarmReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncAlarm id B32; - CARD32 valueMask B32; -} xSyncCreateAlarmReq; -#define sz_xSyncCreateAlarmReq 12 - -/* - * Destroy Alarm - */ -typedef struct _xSyncDestroyAlarmReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncAlarm alarm B32; -} xSyncDestroyAlarmReq; -#define sz_xSyncDestroyAlarmReq 8 - -/* - * Query Alarm - */ -typedef struct _xSyncQueryAlarmReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncAlarm alarm B32; -} xSyncQueryAlarmReq; -#define sz_xSyncQueryAlarmReq 8 - -typedef struct { - BYTE type; - CARD8 unused; - CARD16 sequenceNumber B16; - CARD32 length B32; - XSyncCounter counter B32; - CARD32 value_type B32; - INT32 wait_value_hi B32; - CARD32 wait_value_lo B32; - CARD32 test_type B32; - INT32 delta_hi B32; - CARD32 delta_lo B32; - BOOL events; - BYTE state; - BYTE pad0; - BYTE pad1; -} xSyncQueryAlarmReply; -#define sz_xSyncQueryAlarmReply 40 - -/* - * Change Alarm - */ -typedef struct _xSyncChangeAlarmReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncAlarm alarm B32; - CARD32 valueMask B32; -} xSyncChangeAlarmReq; -#define sz_xSyncChangeAlarmReq 12 - -/* - * SetPriority - */ -typedef struct _xSyncSetPriority{ - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - CARD32 id B32; - INT32 priority B32; -} xSyncSetPriorityReq; -#define sz_xSyncSetPriorityReq 12 - -/* - * Get Priority - */ -typedef struct _xSyncGetPriority{ - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - CARD32 id B32; /*XXX XID? */ -} xSyncGetPriorityReq; -#define sz_xSyncGetPriorityReq 8 - -typedef struct { - BYTE type; - CARD8 unused; - CARD16 sequenceNumber B16; - CARD32 length B32; - INT32 priority B32; - CARD32 pad0 B32; - CARD32 pad1 B32; - CARD32 pad2 B32; - CARD32 pad3 B32; - CARD32 pad4 B32; -} xSyncGetPriorityReply; -#define sz_xSyncGetPriorityReply 32 - -/* - * Create Fence - */ -typedef struct _xSyncCreateFenceReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - Drawable d B32; - XSyncFence fid B32; - BOOL initially_triggered; - CARD8 pad0; - CARD16 pad1; -} xSyncCreateFenceReq; -#define sz_xSyncCreateFenceReq 16 - -/* - * Put a fence object in the "triggered" state. - */ -typedef struct _xSyncTriggerFenceReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncFence fid B32; -} xSyncTriggerFenceReq; -#define sz_xSyncTriggerFenceReq 8 - -/* - * Put a fence in the "untriggered" state. - */ -typedef struct _xSyncResetFenceReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncFence fid B32; -} xSyncResetFenceReq; -#define sz_xSyncResetFenceReq 8 - -/* - * Destroy a fence object - */ -typedef struct _xSyncDestroyFenceReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncFence fid B32; -} xSyncDestroyFenceReq; -#define sz_xSyncDestroyFenceReq 8 - -/* - * Query a fence object - */ -typedef struct _xSyncQueryFenceReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; - XSyncFence fid B32; -} xSyncQueryFenceReq; -#define sz_xSyncQueryFenceReq 8 - -/* - * Wait for any of a list of fence sync objects - * to reach the "triggered" state. - */ -typedef struct _xSyncAwaitFenceReq { - CARD8 reqType; - CARD8 syncReqType; - CARD16 length B16; -} xSyncAwaitFenceReq; -#define sz_xSyncAwaitFenceReq 4 - -typedef struct { - BYTE type; - CARD8 unused; - CARD16 sequenceNumber B16; - CARD32 length B32; - BOOL triggered; - BYTE pad0; - CARD16 pad1 B16; - CARD32 pad2 B32; - CARD32 pad3 B32; - CARD32 pad4 B32; - CARD32 pad5 B32; - CARD32 pad6 B32; -} xSyncQueryFenceReply; -#define sz_xSyncQueryFenceReply 32 - -/* - * Events - */ - -typedef struct _xSyncCounterNotifyEvent { - BYTE type; - BYTE kind; - CARD16 sequenceNumber B16; - XSyncCounter counter B32; - INT32 wait_value_hi B32; - CARD32 wait_value_lo B32; - INT32 counter_value_hi B32; - CARD32 counter_value_lo B32; - CARD32 time B32; - CARD16 count B16; - BOOL destroyed; - BYTE pad0; -} xSyncCounterNotifyEvent; - -typedef struct _xSyncAlarmNotifyEvent { - BYTE type; - BYTE kind; - CARD16 sequenceNumber B16; - XSyncAlarm alarm B32; - INT32 counter_value_hi B32; - CARD32 counter_value_lo B32; - INT32 alarm_value_hi B32; - CARD32 alarm_value_lo B32; - CARD32 time B32; - CARD8 state; - BYTE pad0; - BYTE pad1; - BYTE pad2; -} xSyncAlarmNotifyEvent; - -#undef XSyncCounter -#undef XSyncAlarm -#undef XSyncFence -#undef Drawable - - -#endif /* _SYNCPROTO_H_ */ +/* + +Copyright 1991, 1993, 1994, 1998 The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ + +/*********************************************************** +Copyright 1991,1993 by Digital Equipment Corporation, Maynard, Massachusetts, +and Olivetti Research Limited, Cambridge, England. + + All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation, and that the names of Digital or Olivetti +not be used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission. + +DIGITAL AND OLIVETTI DISCLAIM ALL WARRANTIES WITH REGARD TO THIS +SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS, IN NO EVENT SHALL THEY BE LIABLE FOR ANY SPECIAL, INDIRECT OR +CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF +USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. + +******************************************************************/ + +#ifndef _SYNCPROTO_H_ +#define _SYNCPROTO_H_ + +#include + +#define X_SyncInitialize 0 +#define X_SyncListSystemCounters 1 +#define X_SyncCreateCounter 2 +#define X_SyncSetCounter 3 +#define X_SyncChangeCounter 4 +#define X_SyncQueryCounter 5 +#define X_SyncDestroyCounter 6 +#define X_SyncAwait 7 +#define X_SyncCreateAlarm 8 +#define X_SyncChangeAlarm 9 +#define X_SyncQueryAlarm 10 +#define X_SyncDestroyAlarm 11 +#define X_SyncSetPriority 12 +#define X_SyncGetPriority 13 +#define X_SyncCreateFence 14 +#define X_SyncTriggerFence 15 +#define X_SyncResetFence 16 +#define X_SyncDestroyFence 17 +#define X_SyncQueryFence 18 +#define X_SyncAwaitFence 19 + +/* cover up types from sync.h to make sure they're the right size for + * protocol packaging. These will be undef'ed after all the protocol + * structures are defined. + */ +#define XSyncCounter CARD32 +#define XSyncAlarm CARD32 +#define XSyncFence CARD32 +#define Drawable CARD32 + +/* + * Initialize + */ +typedef struct _xSyncInitialize { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + CARD8 majorVersion; + CARD8 minorVersion; + CARD16 pad B16; +} xSyncInitializeReq; +#define sz_xSyncInitializeReq 8 + +typedef struct { + BYTE type; + CARD8 unused; + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD8 majorVersion; + CARD8 minorVersion; + CARD16 pad B16; + CARD32 pad0 B32; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; +} xSyncInitializeReply; +#define sz_xSyncInitializeReply 32 + +/* + * ListSystemCounters + */ +typedef struct _xSyncListSystemCounters +{ + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; +} xSyncListSystemCountersReq; +#define sz_xSyncListSystemCountersReq 4 + +typedef struct { + BYTE type; + CARD8 unused; + CARD16 sequenceNumber B16; + CARD32 length B32; + INT32 nCounters B32; + CARD32 pad0 B32; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; +} xSyncListSystemCountersReply; +#define sz_xSyncListSystemCountersReply 32 + +typedef struct { + XSyncCounter counter B32; + INT32 resolution_hi B32; + CARD32 resolution_lo B32; + CARD16 name_length B16; +} xSyncSystemCounter; +#define sz_xSyncSystemCounter 14 + +/* + * Create Counter + */ +typedef struct _xSyncCreateCounterReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncCounter cid B32; + INT32 initial_value_hi B32; + CARD32 initial_value_lo B32; +} xSyncCreateCounterReq; +#define sz_xSyncCreateCounterReq 16 + +/* + * Change Counter + */ +typedef struct _xSyncChangeCounterReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncCounter cid B32; + INT32 value_hi B32; + CARD32 value_lo B32; +} xSyncChangeCounterReq; +#define sz_xSyncChangeCounterReq 16 + +/* + * Set Counter + */ +typedef struct _xSyncSetCounterReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncCounter cid B32; + INT32 value_hi B32; + CARD32 value_lo B32; +} xSyncSetCounterReq; +#define sz_xSyncSetCounterReq 16 + +/* + * Destroy Counter + */ +typedef struct _xSyncDestroyCounterReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncCounter counter B32; +} xSyncDestroyCounterReq; +#define sz_xSyncDestroyCounterReq 8 + +/* + * Query Counter + */ +typedef struct _xSyncQueryCounterReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncCounter counter B32; +} xSyncQueryCounterReq; +#define sz_xSyncQueryCounterReq 8 + + +typedef struct { + BYTE type; + CARD8 unused; + CARD16 sequenceNumber B16; + CARD32 length B32; + INT32 value_hi B32; + CARD32 value_lo B32; + CARD32 pad0 B32; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; +} xSyncQueryCounterReply; +#define sz_xSyncQueryCounterReply 32 + +/* + * Await + */ +typedef struct _xSyncAwaitReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; +} xSyncAwaitReq; +#define sz_xSyncAwaitReq 4 + +typedef struct _xSyncWaitCondition { + XSyncCounter counter B32; + CARD32 value_type B32; + INT32 wait_value_hi B32; + CARD32 wait_value_lo B32; + CARD32 test_type B32; + INT32 event_threshold_hi B32; + CARD32 event_threshold_lo B32; +} xSyncWaitCondition; +#define sz_xSyncWaitCondition 28 + +/* + * Create Alarm + */ +typedef struct _xSyncCreateAlarmReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncAlarm id B32; + CARD32 valueMask B32; +} xSyncCreateAlarmReq; +#define sz_xSyncCreateAlarmReq 12 + +/* + * Destroy Alarm + */ +typedef struct _xSyncDestroyAlarmReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncAlarm alarm B32; +} xSyncDestroyAlarmReq; +#define sz_xSyncDestroyAlarmReq 8 + +/* + * Query Alarm + */ +typedef struct _xSyncQueryAlarmReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncAlarm alarm B32; +} xSyncQueryAlarmReq; +#define sz_xSyncQueryAlarmReq 8 + +typedef struct { + BYTE type; + CARD8 unused; + CARD16 sequenceNumber B16; + CARD32 length B32; + XSyncCounter counter B32; + CARD32 value_type B32; + INT32 wait_value_hi B32; + CARD32 wait_value_lo B32; + CARD32 test_type B32; + INT32 delta_hi B32; + CARD32 delta_lo B32; + BOOL events; + BYTE state; + BYTE pad0; + BYTE pad1; +} xSyncQueryAlarmReply; +#define sz_xSyncQueryAlarmReply 40 + +/* + * Change Alarm + */ +typedef struct _xSyncChangeAlarmReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncAlarm alarm B32; + CARD32 valueMask B32; +} xSyncChangeAlarmReq; +#define sz_xSyncChangeAlarmReq 12 + +/* + * SetPriority + */ +typedef struct _xSyncSetPriority{ + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + CARD32 id B32; + INT32 priority B32; +} xSyncSetPriorityReq; +#define sz_xSyncSetPriorityReq 12 + +/* + * Get Priority + */ +typedef struct _xSyncGetPriority{ + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + CARD32 id B32; /*XXX XID? */ +} xSyncGetPriorityReq; +#define sz_xSyncGetPriorityReq 8 + +typedef struct { + BYTE type; + CARD8 unused; + CARD16 sequenceNumber B16; + CARD32 length B32; + INT32 priority B32; + CARD32 pad0 B32; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; +} xSyncGetPriorityReply; +#define sz_xSyncGetPriorityReply 32 + +/* + * Create Fence + */ +typedef struct _xSyncCreateFenceReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + Drawable d B32; + XSyncFence fid B32; + BOOL initially_triggered; + CARD8 pad0; + CARD16 pad1; +} xSyncCreateFenceReq; +#define sz_xSyncCreateFenceReq 16 + +/* + * Put a fence object in the "triggered" state. + */ +typedef struct _xSyncTriggerFenceReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncFence fid B32; +} xSyncTriggerFenceReq; +#define sz_xSyncTriggerFenceReq 8 + +/* + * Put a fence in the "untriggered" state. + */ +typedef struct _xSyncResetFenceReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncFence fid B32; +} xSyncResetFenceReq; +#define sz_xSyncResetFenceReq 8 + +/* + * Destroy a fence object + */ +typedef struct _xSyncDestroyFenceReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncFence fid B32; +} xSyncDestroyFenceReq; +#define sz_xSyncDestroyFenceReq 8 + +/* + * Query a fence object + */ +typedef struct _xSyncQueryFenceReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; + XSyncFence fid B32; +} xSyncQueryFenceReq; +#define sz_xSyncQueryFenceReq 8 + +/* + * Wait for any of a list of fence sync objects + * to reach the "triggered" state. + */ +typedef struct _xSyncAwaitFenceReq { + CARD8 reqType; + CARD8 syncReqType; + CARD16 length B16; +} xSyncAwaitFenceReq; +#define sz_xSyncAwaitFenceReq 4 + +typedef struct { + BYTE type; + CARD8 unused; + CARD16 sequenceNumber B16; + CARD32 length B32; + BOOL triggered; + BYTE pad0; + CARD16 pad1 B16; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; + CARD32 pad6 B32; +} xSyncQueryFenceReply; +#define sz_xSyncQueryFenceReply 32 + +/* + * Events + */ + +typedef struct _xSyncCounterNotifyEvent { + BYTE type; + BYTE kind; + CARD16 sequenceNumber B16; + XSyncCounter counter B32; + INT32 wait_value_hi B32; + CARD32 wait_value_lo B32; + INT32 counter_value_hi B32; + CARD32 counter_value_lo B32; + CARD32 time B32; + CARD16 count B16; + BOOL destroyed; + BYTE pad0; +} xSyncCounterNotifyEvent; + +typedef struct _xSyncAlarmNotifyEvent { + BYTE type; + BYTE kind; + CARD16 sequenceNumber B16; + XSyncAlarm alarm B32; + INT32 counter_value_hi B32; + CARD32 counter_value_lo B32; + INT32 alarm_value_hi B32; + CARD32 alarm_value_lo B32; + CARD32 time B32; + CARD8 state; + BYTE pad0; + BYTE pad1; + BYTE pad2; +} xSyncAlarmNotifyEvent; + +#undef XSyncCounter +#undef XSyncAlarm +#undef XSyncFence +#undef Drawable + + +#endif /* _SYNCPROTO_H_ */ -- cgit v1.2.3