Move extension descriptions out of extensions/ subdirectory
[free-sw/xcb/proto] / src / sync.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <!--
3 Copyright (C) 2004 Mikko Torni and Josh Triplett.
4 All Rights Reserved.  See the file COPYING in this directory
5 for licensing information.
6 -->
7 <xcb header="sync" extension-xname="SYNC" extension-name="Sync">
8   <import>xproto</import>
9
10   <xidtype name="ALARM" />
11
12   <enum name="ALARMSTATE">
13     <item name="Active" />
14     <item name="Inactive" />
15     <item name="Destroyed" />
16   </enum>
17
18   <xidtype name="COUNTER" />
19
20   <enum name="TESTTYPE">
21     <item name="PositiveTransition" />
22     <item name="NegativeTransition" />
23     <item name="PositiveComparison" />
24     <item name="NegativeComparison" />
25   </enum>
26
27   <enum name="VALUETYPE">
28     <item name="Absolute" />
29     <item name="Relative" />
30   </enum>
31
32   <enum name="CA">
33     <item name="Counter">  <bit>0</bit></item>
34     <item name="ValueType"><bit>1</bit></item>
35     <item name="Value">    <bit>2</bit></item>
36     <item name="TestType"> <bit>3</bit></item>
37     <item name="Delta">    <bit>4</bit></item>
38     <item name="Events">   <bit>5</bit></item>
39   </enum>
40
41   <struct name="INT64">
42     <field type="INT32" name="hi" />
43     <field type="CARD32" name="lo" />
44   </struct>
45
46   <struct name="SYSTEMCOUNTER">
47     <field type="COUNTER" name="counter" />
48     <field type="INT64" name="resolution" />
49     <field type="CARD16" name="name_len" />
50     <list type="CARD8" name="name">
51       <fieldref>name_len</fieldref>
52     </list>
53   </struct>
54
55   <struct name="TRIGGER">
56     <field type="COUNTER" name="counter" />
57     <field type="VALUETYPE" name="wait_type" />
58     <field type="INT64" name="wait_value" />
59     <field type="TESTTYPE" name="test_type" />
60   </struct>
61
62   <struct name="WAITCONDITION">
63     <field type="TRIGGER" name="trigger" />
64     <field type="INT64" name="event_threshold" />
65   </struct>
66
67   <error name="Counter" number="0">
68     <field type="CARD32" name="bad_counter" />
69     <field type="CARD16" name="minor_opcode" />
70     <field type="CARD8" name="major_opcode" />
71   </error>
72
73   <error name="Alarm" number="1">
74     <field type="CARD32" name="bad_alarm" />
75     <field type="CARD16" name="minor_opcode" />
76     <field type="CARD8" name="major_opcode" />
77   </error>
78     
79   <request name="Initialize" opcode="0">
80     <reply>
81       <pad bytes="1" />
82       <field type="CARD8" name="major_version" />
83       <field type="CARD8" name="minor_version" />
84     </reply>
85   </request>
86
87   <request name="ListSystemCounters" opcode="1">
88     <reply>
89       <pad bytes="1" />
90       <field type="CARD32" name="counters_len" />
91       <pad bytes="20" />
92       <list type="SYSTEMCOUNTER" name="counters">
93         <fieldref>counters_len</fieldref>
94       </list>
95     </reply>
96   </request>
97
98   <request name="CreateCounter" opcode="2">
99     <field type="COUNTER" name="id" />
100     <field type="INT64" name="initial_value" />
101   </request>
102
103   <request name="DestroyCounter" opcode="6">
104     <field type="COUNTER" name="counter" />
105   </request>
106
107   <request name="QueryCounter" opcode="5">
108     <field type="COUNTER" name="counter" />
109     <reply>
110       <pad bytes="1" />
111       <field type="INT64" name="counter_value" />
112     </reply>
113   </request>
114
115   <request name="Await" opcode="7">
116     <list type="WAITCONDITION" name="wait_list" />
117   </request>
118
119   <request name="ChangeCounter" opcode="4">
120     <field type="COUNTER" name="counter" />
121     <field type="INT64" name="amount" />
122   </request>
123
124   <request name="SetCounter" opcode="3">
125     <field type="COUNTER" name="counter" />
126     <field type="INT64" name="value" />
127   </request>
128
129   <request name="CreateAlarm" opcode="8">
130     <field type="ALARM" name="id" />
131     <valueparam value-mask-type="CARD32"
132                 value-mask-name="value_mask"
133                 value-list-name="value_list" />
134   </request>
135
136   <request name="ChangeAlarm" opcode="9">
137     <field type="ALARM" name="id" />
138     <valueparam value-mask-type="CARD32"
139                 value-mask-name="value_mask"
140                 value-list-name="value_list" />
141   </request>
142
143   <request name="DestroyAlarm" opcode="11">
144     <field type="ALARM" name="alarm" />
145   </request>
146
147   <request name="QueryAlarm" opcode="10">
148     <field type="ALARM" name="alarm" />
149     <reply>
150       <pad bytes="1" />
151       <field type="TRIGGER" name="trigger" />
152       <field type="INT64" name="delta" />
153       <field type="BOOL" name="events" />
154       <field type="ALARMSTATE" name="state" />
155     </reply>
156   </request>
157
158   <request name="SetPriority" opcode="12">
159     <field type="CARD32" name="id" />
160     <field type="INT32" name="priority" />
161   </request>
162     
163   <request name="GetPriority" opcode="13">
164     <field type="CARD32" name="id" />
165     <reply>
166       <pad bytes="1" />
167       <field type="INT32" name="priority" />
168     </reply>
169   </request>
170
171   <event name="CounterNotify" number="0">
172     <field type="CARD8" name="kind" />
173     <field type="COUNTER" name="counter" />
174     <field type="INT64" name="wait_value" />
175     <field type="INT64" name="counter_value" />
176     <field type="TIMESTAMP" name="timestamp" />
177     <field type="CARD16" name="count" />
178     <field type="BOOL" name="destroyed" />
179   </event>
180
181   <event name="AlarmNotify" number="1">
182     <field type="CARD8" name="kind" />
183     <field type="ALARM" name="alarm" />
184     <field type="INT64" name="counter_value" />
185     <field type="INT64" name="alarm_value" />
186     <field type="TIMESTAMP" name="timestamp" />
187   </event>
188 </xcb>