<?xml version="1.0" encoding="utf-8"?>
<xcb header="dri2" extension-xname="DRI2" extension-name="DRI2"
major-version="1" minor-version="4">
<import>xproto</import>
<enum name="Attachment">
<item name="BufferFrontLeft"> <value>0</value> </item>
<item name="BufferBackLeft"> <value>1</value> </item>
<item name="BufferFrontRight"> <value>2</value> </item>
<item name="BufferBackRight"> <value>3</value> </item>
<item name="BufferDepth"> <value>4</value> </item>
<item name="BufferStencil"> <value>5</value> </item>
<item name="BufferAccum"> <value>6</value> </item>
<item name="BufferFakeFrontLeft"> <value>7</value> </item>
<item name="BufferFakeFrontRight"> <value>8</value> </item>
<item name="BufferDepthStencil"> <value>9</value> </item>
<item name="BufferHiz"> <value>10</value> </item>
</enum>
<enum name="DriverType">
<item name="DRI"> <value>0</value> </item>
<item name="VDPAU"> <value>1</value> </item>
</enum>
<enum name="EventType">
<item name="ExchangeComplete"><value>1</value></item>
<item name="BlitComplete"> <value>2</value></item>
<item name="FlipComplete"> <value>3</value></item>
</enum>
<struct name="DRI2Buffer">
<field type="CARD32" name="attachment" enum="Attachment" />
<field type="CARD32" name="name" />
<field type="CARD32" name="pitch" />
<field type="CARD32" name="cpp" />
<field type="CARD32" name="flags" />
</struct>
<struct name="AttachFormat">
<field type="CARD32" name="attachment" enum="Attachment" />
<field type="CARD32" name="format" />
</struct>
<request name="QueryVersion" opcode="0">
<field type="CARD32" name="major_version" />
<field type="CARD32" name="minor_version" />
<reply>
<pad bytes="1" />
<field type="CARD32" name="major_version" />
<field type="CARD32" name="minor_version" />
</reply>
</request>
<request name="Connect" opcode="1">
<field type="WINDOW" name="window" />
<field type="CARD32" name="driver_type" enum="DriverType" />
<reply>
<pad bytes="1" />
<field type="CARD32" name="driver_name_length" />
<field type="CARD32" name="device_name_length" />
<pad bytes="16" />
<list type="char" name="driver_name">
<fieldref>driver_name_length</fieldref>
</list>
<list type="void" name="alignment_pad">
<op op="-">
<op op="&">
<op op="+">
<fieldref>driver_name_length</fieldref>
<value>3</value>
</op>
<unop op="~">
<value>3</value>
</unop>
</op>
<fieldref>driver_name_length</fieldref>
</op>
</list>
<list type="char" name="device_name">
<fieldref>device_name_length</fieldref>
</list>
</reply>
</request>
<request name="Authenticate" opcode="2">
<field type="WINDOW" name="window" />
<field type="CARD32" name="magic" />
<reply>
<pad bytes="1" />
<field type="CARD32" name="authenticated" />
</reply>
</request>
<request name="CreateDrawable" opcode="3">
<field type="DRAWABLE" name="drawable" />
</request>
<request name="DestroyDrawable" opcode="4">
<field type="DRAWABLE" name="drawable" />
</request>
<request name="GetBuffers" opcode="5">
<field type="DRAWABLE" name="drawable" />
<field type="CARD32" name="count" />
<list type="CARD32" name="attachments">
</list>
<reply>
<pad bytes="1" />
<field type="CARD32" name="width" />
<field type="CARD32" name="height" />
<field type="CARD32" name="count" />
<pad bytes="12" />
<list type="DRI2Buffer" name="buffers">
<fieldref>count</fieldref>
</list>
</reply>
</request>
<request name="CopyRegion" opcode="6">
<field type="DRAWABLE" name="drawable" />
<field type="CARD32" name="region" />
<field type="CARD32" name="dest" />
<field type="CARD32" name="src" />
<reply>
<pad bytes="1" />
</reply>
</request>
<request name="GetBuffersWithFormat" opcode="7">
<field type="DRAWABLE" name="drawable" />
<field type="CARD32" name="count" />
<list type="AttachFormat" name="attachments">
</list>
<reply>
<pad bytes="1" />
<field type="CARD32" name="width" />
<field type="CARD32" name="height" />
<field type="CARD32" name="count" />
<pad bytes="12" />
<list type="DRI2Buffer" name="buffers">
<fieldref>count</fieldref>
</list>
</reply>
</request>
<request name="SwapBuffers" opcode="8">
<field type="DRAWABLE" name="drawable" />
<field type="CARD32" name="target_msc_hi" />
<field type="CARD32" name="target_msc_lo" />
<field type="CARD32" name="divisor_hi" />
<field type="CARD32" name="divisor_lo" />
<field type="CARD32" name="remainder_hi" />
<field type="CARD32" name="remainder_lo" />
<reply>
<pad bytes="1" />
<field type="CARD32" name="swap_hi" />
<field type="CARD32" name="swap_lo" />
</reply>
</request>
<request name="GetMSC" opcode="9">
<field type="DRAWABLE" name="drawable" />
<reply>
<pad bytes="1" />
<field type="CARD32" name="ust_hi" />
<field type="CARD32" name="ust_lo" />
<field type="CARD32" name="msc_hi" />
<field type="CARD32" name="msc_lo" />
<field type="CARD32" name="sbc_hi" />
<field type="CARD32" name="sbc_lo" />
</reply>
</request>
<request name="WaitMSC" opcode="10">
<field type="DRAWABLE" name="drawable" />
<field type="CARD32" name="target_msc_hi" />
<field type="CARD32" name="target_msc_lo" />
<field type="CARD32" name="divisor_hi" />
<field type="CARD32" name="divisor_lo" />
<field type="CARD32" name="remainder_hi" />
<field type="CARD32" name="remainder_lo" />
<reply>
<pad bytes="1" />
<field type="CARD32" name="ust_hi" />
<field type="CARD32" name="ust_lo" />
<field type="CARD32" name="msc_hi" />
<field type="CARD32" name="msc_lo" />
<field type="CARD32" name="sbc_hi" />
<field type="CARD32" name="sbc_lo" />
</reply>
</request>
<request name="WaitSBC" opcode="11">
<field type="DRAWABLE" name="drawable" />
<field type="CARD32" name="target_sbc_hi" />
<field type="CARD32" name="target_sbc_lo" />
<reply>
<pad bytes="1" />
<field type="CARD32" name="ust_hi" />
<field type="CARD32" name="ust_lo" />
<field type="CARD32" name="msc_hi" />
<field type="CARD32" name="msc_lo" />
<field type="CARD32" name="sbc_hi" />
<field type="CARD32" name="sbc_lo" />
</reply>
</request>
<request name="SwapInterval" opcode="12">
<field type="DRAWABLE" name="drawable" />
<field type="CARD32" name="interval" />
</request>
<request name="GetParam" opcode="13">
<field type="DRAWABLE" name="drawable" />
<field type="CARD32" name="param" />
<reply>
<field type="BOOL" name="is_param_recognized" />
<field type="CARD32" name="value_hi" />
<field type="CARD32" name="value_lo" />
</reply>
</request>
<event name="BufferSwapComplete" number="0">
<pad bytes="1" />
<field type="CARD16" name="event_type" enum="EventType" />
<pad bytes="2" />
<field type="DRAWABLE" name="drawable" />
<field type="CARD32" name="ust_hi" />
<field type="CARD32" name="ust_lo" />
<field type="CARD32" name="msc_hi" />
<field type="CARD32" name="msc_lo" />
<field type="CARD32" name="sbc" />
</event>
<event name="InvalidateBuffers" number="1">
<pad bytes="1" />
<field type="DRAWABLE" name="drawable" />
</event>
</xcb>