xv: Add align. pad in struct AdaptorInfo
[free-sw/xcb/proto] / src / xv.xml
index 26047a6..47a05d0 100644 (file)
@@ -44,13 +44,13 @@ authorization from the authors.
     </enum>
 
     <enum name="ImageFormatInfoType">
-        <item name="RGB" />
-        <item name="YUV" />
+        <item name="RGB"> <value>0</value> </item>
+        <item name="YUV"> <value>1</value> </item>
     </enum>
 
     <enum name="ImageFormatInfoFormat">
-        <item name="Packed" />
-        <item name="Planar" />
+        <item name="Packed"> <value>0</value> </item>
+        <item name="Planar"> <value>1</value> </item>
     </enum>
 
     <enum name="AttributeFlag">
@@ -58,6 +58,28 @@ authorization from the authors.
         <item name="Settable"><bit>1</bit></item>
     </enum>
     
+    <enum name="VideoNotifyReason">
+       <item name="Started">   <value>0</value> </item>
+       <item name="Stopped">   <value>1</value> </item>
+       <item name="Busy">      <value>2</value> </item>
+       <item name="Preempted"> <value>3</value> </item>
+       <item name="HardError"> <value>4</value> </item>
+    </enum>
+
+    <enum name="ScanlineOrder">
+        <item name="TopToBottom"> <value>0</value> </item>
+        <item name="BottomToTop"> <value>1</value> </item>
+    </enum>
+
+    <enum name="GrabPortStatus">
+        <item name="Success">        <value>0</value> </item>
+        <item name="BadExtension">   <value>1</value> </item>
+        <item name="AlreadyGrabbed"> <value>2</value> </item>
+        <item name="InvalidTime">    <value>3</value> </item>
+        <item name="BadReply">       <value>4</value> </item>
+        <item name="BadAlloc">       <value>5</value> </item>
+    </enum>
+
     <struct name="Rational">
         <field type="INT32" name="numerator" />
         <field type="INT32" name="denominator" />
@@ -74,11 +96,12 @@ authorization from the authors.
         <field type="CARD16" name="name_size" />
         <field type="CARD16" name="num_ports" />
         <field type="CARD16" name="num_formats" />
-        <field type="CARD8" name="type" />
+        <field type="CARD8" name="type" mask="Type" />
         <pad bytes="1" />
         <list type="char" name="name">
             <fieldref>name_size</fieldref>
         </list>
+        <pad align="4" />
         <list type="Format" name="formats">
             <fieldref>num_formats</fieldref>
         </list>
@@ -90,10 +113,6 @@ authorization from the authors.
         <field type="CARD16" name="name_size" />
         <field type="CARD16" name="width" />
         <field type="CARD16" name="height" />
-        <!--
-        Some versions of Xvproto.h incorrectly have
-        this padding after "rate".
-        -->
         <pad bytes="2" />
         <field type="Rational" name="rate" />
         <list type="char" name="name">
@@ -120,7 +139,7 @@ authorization from the authors.
     </struct>
     
     <struct name="AttributeInfo">
-        <field type="CARD32" name="flags" />
+        <field type="CARD32" name="flags" mask="AttributeFlag" />
         <field type="INT32" name="min" />
         <field type="INT32" name="max" />
         <field type="CARD32" name="size" />
@@ -131,8 +150,8 @@ authorization from the authors.
 
     <struct name="ImageFormatInfo">
         <field type="CARD32" name="id" />
-        <field type="CARD8" name="type" />
-        <field type="CARD8" name="byte_order" />
+        <field type="CARD8" name="type" enum="ImageFormatInfoType" />
+        <field type="CARD8" name="byte_order" enum="ImageOrder" />
         <pad bytes="2" />
         <list type="CARD8" name="guid">
             <value>16</value>
@@ -145,7 +164,7 @@ authorization from the authors.
         <field type="CARD32" name="red_mask" />
         <field type="CARD32" name="green_mask" />
         <field type="CARD32" name="blue_mask" />
-        <field type="CARD8" name="format" />
+        <field type="CARD8" name="format" enum="ImageFormatInfoFormat" />
         <pad bytes="3" />
         <field type="CARD32" name="y_sample_bits" />
         <field type="CARD32" name="u_sample_bits" />
@@ -159,7 +178,7 @@ authorization from the authors.
         <list type="CARD8" name="vcomp_order">
             <value>32</value>
         </list>
-        <field type="CARD8" name="vscanline_order" />
+        <field type="CARD8" name="vscanline_order" enum="ScanlineOrder" />
         <pad bytes="11" />
     </struct>
 
@@ -171,7 +190,7 @@ authorization from the authors.
 
     <!-- Events -->
     <event name="VideoNotify" number="0">
-        <field type="BYTE" name="reason" />
+        <field type="BYTE" name="reason" enum="VideoNotifyReason" />
         <field type="TIMESTAMP" name="time" />
         <field type="DRAWABLE" name="drawable" />
         <field type="PORT" name="port" />
@@ -212,10 +231,6 @@ authorization from the authors.
         <reply>
             <pad bytes="1" />
             <field type="CARD16" name="num_encodings" />
-            <!--
-            In Xvproto.h this padding is 24 bytes
-            in actuality it is 22 bytes
-            -->
             <pad bytes="22" />
             <list type="EncodingInfo" name="info">
                 <fieldref>num_encodings</fieldref>
@@ -225,15 +240,15 @@ authorization from the authors.
 
     <request name="GrabPort" opcode="3">
         <field type="PORT" name="port" />
-        <field type="TIMESTAMP" name="time" />
+        <field type="TIMESTAMP" name="time" altenum="Time" />
         <reply>
-            <field type="BYTE" name="result" />
+            <field type="BYTE" name="result" enum="GrabPortStatus" />
         </reply>
     </request>
 
     <request name="UngrabPort" opcode="4">
         <field type="PORT" name="port" />
-        <field type="TIMESTAMP" name="time" />
+        <field type="TIMESTAMP" name="time" altenum="Time" />
     </request>
 
     <request name="PutVideo" opcode="5">