Move extension descriptions out of extensions/ subdirectory
[free-sw/xcb/proto] / src / sync.xml
diff --git a/src/sync.xml b/src/sync.xml
new file mode 100644 (file)
index 0000000..6efca36
--- /dev/null
@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2004 Mikko Torni and Josh Triplett.
+All Rights Reserved.  See the file COPYING in this directory
+for licensing information.
+-->
+<xcb header="sync" extension-xname="SYNC" extension-name="Sync">
+  <import>xproto</import>
+
+  <xidtype name="ALARM" />
+
+  <enum name="ALARMSTATE">
+    <item name="Active" />
+    <item name="Inactive" />
+    <item name="Destroyed" />
+  </enum>
+
+  <xidtype name="COUNTER" />
+
+  <enum name="TESTTYPE">
+    <item name="PositiveTransition" />
+    <item name="NegativeTransition" />
+    <item name="PositiveComparison" />
+    <item name="NegativeComparison" />
+  </enum>
+
+  <enum name="VALUETYPE">
+    <item name="Absolute" />
+    <item name="Relative" />
+  </enum>
+
+  <enum name="CA">
+    <item name="Counter">  <bit>0</bit></item>
+    <item name="ValueType"><bit>1</bit></item>
+    <item name="Value">    <bit>2</bit></item>
+    <item name="TestType"> <bit>3</bit></item>
+    <item name="Delta">    <bit>4</bit></item>
+    <item name="Events">   <bit>5</bit></item>
+  </enum>
+
+  <struct name="INT64">
+    <field type="INT32" name="hi" />
+    <field type="CARD32" name="lo" />
+  </struct>
+
+  <struct name="SYSTEMCOUNTER">
+    <field type="COUNTER" name="counter" />
+    <field type="INT64" name="resolution" />
+    <field type="CARD16" name="name_len" />
+    <list type="CARD8" name="name">
+      <fieldref>name_len</fieldref>
+    </list>
+  </struct>
+
+  <struct name="TRIGGER">
+    <field type="COUNTER" name="counter" />
+    <field type="VALUETYPE" name="wait_type" />
+    <field type="INT64" name="wait_value" />
+    <field type="TESTTYPE" name="test_type" />
+  </struct>
+
+  <struct name="WAITCONDITION">
+    <field type="TRIGGER" name="trigger" />
+    <field type="INT64" name="event_threshold" />
+  </struct>
+
+  <error name="Counter" number="0">
+    <field type="CARD32" name="bad_counter" />
+    <field type="CARD16" name="minor_opcode" />
+    <field type="CARD8" name="major_opcode" />
+  </error>
+
+  <error name="Alarm" number="1">
+    <field type="CARD32" name="bad_alarm" />
+    <field type="CARD16" name="minor_opcode" />
+    <field type="CARD8" name="major_opcode" />
+  </error>
+    
+  <request name="Initialize" opcode="0">
+    <reply>
+      <pad bytes="1" />
+      <field type="CARD8" name="major_version" />
+      <field type="CARD8" name="minor_version" />
+    </reply>
+  </request>
+
+  <request name="ListSystemCounters" opcode="1">
+    <reply>
+      <pad bytes="1" />
+      <field type="CARD32" name="counters_len" />
+      <pad bytes="20" />
+      <list type="SYSTEMCOUNTER" name="counters">
+        <fieldref>counters_len</fieldref>
+      </list>
+    </reply>
+  </request>
+
+  <request name="CreateCounter" opcode="2">
+    <field type="COUNTER" name="id" />
+    <field type="INT64" name="initial_value" />
+  </request>
+
+  <request name="DestroyCounter" opcode="6">
+    <field type="COUNTER" name="counter" />
+  </request>
+
+  <request name="QueryCounter" opcode="5">
+    <field type="COUNTER" name="counter" />
+    <reply>
+      <pad bytes="1" />
+      <field type="INT64" name="counter_value" />
+    </reply>
+  </request>
+
+  <request name="Await" opcode="7">
+    <list type="WAITCONDITION" name="wait_list" />
+  </request>
+
+  <request name="ChangeCounter" opcode="4">
+    <field type="COUNTER" name="counter" />
+    <field type="INT64" name="amount" />
+  </request>
+
+  <request name="SetCounter" opcode="3">
+    <field type="COUNTER" name="counter" />
+    <field type="INT64" name="value" />
+  </request>
+
+  <request name="CreateAlarm" opcode="8">
+    <field type="ALARM" name="id" />
+    <valueparam value-mask-type="CARD32"
+                value-mask-name="value_mask"
+                value-list-name="value_list" />
+  </request>
+
+  <request name="ChangeAlarm" opcode="9">
+    <field type="ALARM" name="id" />
+    <valueparam value-mask-type="CARD32"
+                value-mask-name="value_mask"
+                value-list-name="value_list" />
+  </request>
+
+  <request name="DestroyAlarm" opcode="11">
+    <field type="ALARM" name="alarm" />
+  </request>
+
+  <request name="QueryAlarm" opcode="10">
+    <field type="ALARM" name="alarm" />
+    <reply>
+      <pad bytes="1" />
+      <field type="TRIGGER" name="trigger" />
+      <field type="INT64" name="delta" />
+      <field type="BOOL" name="events" />
+      <field type="ALARMSTATE" name="state" />
+    </reply>
+  </request>
+
+  <request name="SetPriority" opcode="12">
+    <field type="CARD32" name="id" />
+    <field type="INT32" name="priority" />
+  </request>
+    
+  <request name="GetPriority" opcode="13">
+    <field type="CARD32" name="id" />
+    <reply>
+      <pad bytes="1" />
+      <field type="INT32" name="priority" />
+    </reply>
+  </request>
+
+  <event name="CounterNotify" number="0">
+    <field type="CARD8" name="kind" />
+    <field type="COUNTER" name="counter" />
+    <field type="INT64" name="wait_value" />
+    <field type="INT64" name="counter_value" />
+    <field type="TIMESTAMP" name="timestamp" />
+    <field type="CARD16" name="count" />
+    <field type="BOOL" name="destroyed" />
+  </event>
+
+  <event name="AlarmNotify" number="1">
+    <field type="CARD8" name="kind" />
+    <field type="ALARM" name="alarm" />
+    <field type="INT64" name="counter_value" />
+    <field type="INT64" name="alarm_value" />
+    <field type="TIMESTAMP" name="timestamp" />
+  </event>
+</xcb>