Move the DTD to its own file.
This commit is contained in:
120
src/mesa/glapi/gl_API.dtd
Normal file
120
src/mesa/glapi/gl_API.dtd
Normal file
@@ -0,0 +1,120 @@
|
||||
<!ELEMENT OpenGLAPI (category+)>
|
||||
<!ELEMENT category (type*, enum*, function*)*>
|
||||
<!ELEMENT type EMPTY>
|
||||
<!ELEMENT enum (size*)>
|
||||
<!ELEMENT size EMPTY>
|
||||
<!ELEMENT function (param*, return?, glx?)*>
|
||||
<!ELEMENT param EMPTY>
|
||||
<!ELEMENT return EMPTY>
|
||||
<!ELEMENT glx EMPTY>
|
||||
|
||||
<!ATTLIST category name NMTOKEN #REQUIRED
|
||||
number NMTOKEN #IMPLIED>
|
||||
<!ATTLIST type name NMTOKEN #REQUIRED
|
||||
size NMTOKEN #REQUIRED
|
||||
glx_name NMTOKEN #IMPLIED>
|
||||
<!ATTLIST enum name NMTOKEN #REQUIRED
|
||||
count CDATA #IMPLIED
|
||||
value NMTOKEN #REQUIRED>
|
||||
<!ATTLIST function name NMTOKEN #REQUIRED
|
||||
alias NMTOKEN #IMPLIED
|
||||
offset CDATA #IMPLIED
|
||||
vectorequiv NMTOKEN #IMPLIED>
|
||||
<!ATTLIST size name NMTOKEN #REQUIRED
|
||||
count NMTOKEN #IMPLIED
|
||||
mode NMTOKEN #IMPLIED>
|
||||
<!ATTLIST param name NMTOKEN #REQUIRED
|
||||
type CDATA #REQUIRED
|
||||
count NMTOKEN #IMPLIED
|
||||
counter (true | false) "false"
|
||||
count_scale NMTOKEN #IMPLIED
|
||||
output (true | false) "false"
|
||||
img_width NMTOKEN #IMPLIED
|
||||
img_height NMTOKEN #IMPLIED
|
||||
img_depth NMTOKEN #IMPLIED
|
||||
img_extent NMTOKEN #IMPLIED
|
||||
img_xoff NMTOKEN #IMPLIED
|
||||
img_yoff NMTOKEN #IMPLIED
|
||||
img_zoff NMTOKEN #IMPLIED
|
||||
img_woff NMTOKEN #IMPLIED
|
||||
img_format NMTOKEN #IMPLIED
|
||||
img_type NMTOKEN #IMPLIED
|
||||
img_target NMTOKEN #IMPLIED
|
||||
img_send_null (true | false) "false"
|
||||
img_null_flag (true | false) "false"
|
||||
img_pad_dimensions (true | false) "false"
|
||||
variable_param NMTOKENS #IMPLIED>
|
||||
<!ATTLIST return type CDATA "void">
|
||||
<!ATTLIST glx rop NMTOKEN #IMPLIED
|
||||
sop NMTOKEN #IMPLIED
|
||||
vendorpriv NMTOKEN #IMPLIED
|
||||
large (true | false) "false"
|
||||
doubles_in_order (true | false) "false"
|
||||
always_array (true | false) "false"
|
||||
handcode (true | false | client | server) "false"
|
||||
img_reset NMTOKEN #IMPLIED
|
||||
dimensions_in_reply (true | false) "false"
|
||||
ignore (true | false) "false">
|
||||
|
||||
<!--
|
||||
The various attributes for param and glx have the meanings listed below.
|
||||
When adding new functions, please annote them correctly. In most cases this
|
||||
will just mean adding a '<glx ignore="true"/>' tag.
|
||||
|
||||
param:
|
||||
name - name of the parameter
|
||||
type - fully qualified type (e.g., with "const", etc.)
|
||||
count - for counted arrays (e.g., the 'lists' parameter to glCallLists),
|
||||
the parameter or literal that represents the count. For functions
|
||||
like glVertex3fv it will be a litteral, for others it will be one of
|
||||
the parameters.
|
||||
counter - this parameter is a counter that will be referenced by the
|
||||
'count' attribute in another parameter.
|
||||
count_scale - literal value scale factor for the 'count' attribute.
|
||||
See ProgramParameters4dvNV for an example.
|
||||
output - this parameter is used to store the output of the function.
|
||||
variable_param - name of parameter used to determine the number of
|
||||
elements referenced by this parameter. This should be the name of a
|
||||
single enum parameter. Most of the gl*Parameter[if]v functions use
|
||||
this. Additionally, the enums that can be passed should be properly
|
||||
annotated.
|
||||
img_width / img_height / img_depth / img_extent - name of parameters
|
||||
(or hardcoded integer) used for the dimensions of pixel data.
|
||||
img_xoff / img_yoff / img_zoff / img_woff - name of parameters used
|
||||
for x, y, z, and w offsets of pixel data.
|
||||
img_format - name of parameter used as the pixel data format.
|
||||
img_type - name of parameter used as the pixel data type.
|
||||
img_target - name of parameter used as a texture target. Non-texture
|
||||
pixel data should hardcode 0.
|
||||
img_send_null - boolean flag to determine if blank pixel data should
|
||||
be sent when a NULL pointer is passed. This is only used by
|
||||
TexImage1D and TexImage2D.
|
||||
img_null_flag - boolean flag to determine if an extra flag is used to
|
||||
determine if a NULL pixel pointer was passed. This is used by
|
||||
TexSubImage1D, TexSubImage2D, TexImage3D and others.
|
||||
img_pad_dimensions - boolean flag to determine if dimension data and
|
||||
offset data should be padded to the next even number of dimensions.
|
||||
For example, this will insert an empty "height" field after the
|
||||
"width" field in the protocol for TexImage1D.
|
||||
|
||||
glx:
|
||||
rop - Opcode value for "render" commands
|
||||
sop - Opcode value for "single" commands
|
||||
vendorpriv - Opcode value for vendor private (or vendor private with
|
||||
reply) commands
|
||||
large - set to "true" of the render command can use RenderLarge protocol.
|
||||
doubles_in_order - older commands always put GLdouble data at the
|
||||
start of the render packet. Newer commands (e.g.,
|
||||
ProgramEnvParameter4dvARB) put the in the order that they appear
|
||||
in the parameter list.
|
||||
always_array - some single commands take reply data as an array or as
|
||||
return value data (e.g., glGetLightfv). Other single commands take
|
||||
reply data only as an array (e.g., glGetClipPlane).
|
||||
handcode - some functions are just too complicated to generate
|
||||
(e.g., glSeperableFilter2D) or operate only on client-side data
|
||||
(e.g., glVertexPointer) and must be handcoded.
|
||||
ignore - some functions have an entry in the dispatch table, but aren't
|
||||
suitable for protocol implementation (e.g., glLockArraysEXT). This
|
||||
also applies to functions that don't have any GLX protocol specified
|
||||
(e.g., glGetFogFuncSGIS).
|
||||
-->
|
@@ -1,126 +1,5 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE OpenGLAPI [
|
||||
<!ELEMENT OpenGLAPI (category+)>
|
||||
<!ELEMENT category (type*, enum*, function*)*>
|
||||
<!ELEMENT type EMPTY>
|
||||
<!ELEMENT enum (size*)>
|
||||
<!ELEMENT size EMPTY>
|
||||
<!ELEMENT function (param*, return?, glx?)*>
|
||||
<!ELEMENT param EMPTY>
|
||||
<!ELEMENT return EMPTY>
|
||||
<!ELEMENT glx EMPTY>
|
||||
|
||||
<!ATTLIST category name NMTOKEN #REQUIRED
|
||||
number NMTOKEN #IMPLIED>
|
||||
<!ATTLIST type name NMTOKEN #REQUIRED
|
||||
size NMTOKEN #REQUIRED
|
||||
glx_name NMTOKEN #IMPLIED>
|
||||
<!ATTLIST enum name NMTOKEN #REQUIRED
|
||||
count CDATA #IMPLIED
|
||||
value NMTOKEN #REQUIRED>
|
||||
<!ATTLIST function name NMTOKEN #REQUIRED
|
||||
alias NMTOKEN #IMPLIED
|
||||
offset CDATA #IMPLIED
|
||||
vectorequiv NMTOKEN #IMPLIED>
|
||||
<!ATTLIST size name NMTOKEN #REQUIRED
|
||||
count NMTOKEN #IMPLIED
|
||||
mode NMTOKEN #IMPLIED>
|
||||
<!ATTLIST param name NMTOKEN #REQUIRED
|
||||
type CDATA #REQUIRED
|
||||
count NMTOKEN #IMPLIED
|
||||
counter (true | false) "false"
|
||||
count_scale NMTOKEN #IMPLIED
|
||||
output (true | false) "false"
|
||||
img_width NMTOKEN #IMPLIED
|
||||
img_height NMTOKEN #IMPLIED
|
||||
img_depth NMTOKEN #IMPLIED
|
||||
img_extent NMTOKEN #IMPLIED
|
||||
img_xoff NMTOKEN #IMPLIED
|
||||
img_yoff NMTOKEN #IMPLIED
|
||||
img_zoff NMTOKEN #IMPLIED
|
||||
img_woff NMTOKEN #IMPLIED
|
||||
img_format NMTOKEN #IMPLIED
|
||||
img_type NMTOKEN #IMPLIED
|
||||
img_target NMTOKEN #IMPLIED
|
||||
img_send_null (true | false) "false"
|
||||
img_null_flag (true | false) "false"
|
||||
img_pad_dimensions (true | false) "false"
|
||||
variable_param NMTOKENS #IMPLIED>
|
||||
<!ATTLIST return type CDATA "void">
|
||||
<!ATTLIST glx rop NMTOKEN #IMPLIED
|
||||
sop NMTOKEN #IMPLIED
|
||||
vendorpriv NMTOKEN #IMPLIED
|
||||
large (true | false) "false"
|
||||
doubles_in_order (true | false) "false"
|
||||
always_array (true | false) "false"
|
||||
handcode (true | false | client | server) "false"
|
||||
img_reset NMTOKEN #IMPLIED
|
||||
dimensions_in_reply (true | false) "false"
|
||||
ignore (true | false) "false">
|
||||
]>
|
||||
|
||||
<!--
|
||||
The various attributes for param and glx have the meanings listed below.
|
||||
When adding new functions, please annote them correctly. In most cases this
|
||||
will just mean adding a '<glx ignore="true"/>' tag.
|
||||
|
||||
param:
|
||||
name - name of the parameter
|
||||
type - fully qualified type (e.g., with "const", etc.)
|
||||
count - for counted arrays (e.g., the 'lists' parameter to glCallLists),
|
||||
the parameter or literal that represents the count. For functions
|
||||
like glVertex3fv it will be a litteral, for others it will be one of
|
||||
the parameters.
|
||||
counter - this parameter is a counter that will be referenced by the
|
||||
'count' attribute in another parameter.
|
||||
count_scale - literal value scale factor for the 'count' attribute.
|
||||
See ProgramParameters4dvNV for an example.
|
||||
output - this parameter is used to store the output of the function.
|
||||
variable_param - name of parameter used to determine the number of
|
||||
elements referenced by this parameter. This should be the name of a
|
||||
single enum parameter. Most of the gl*Parameter[if]v functions use
|
||||
this. Additionally, the enums that can be passed should be properly
|
||||
annotated.
|
||||
img_width / img_height / img_depth / img_extent - name of parameters
|
||||
(or hardcoded integer) used for the dimensions of pixel data.
|
||||
img_xoff / img_yoff / img_zoff / img_woff - name of parameters used
|
||||
for x, y, z, and w offsets of pixel data.
|
||||
img_format - name of parameter used as the pixel data format.
|
||||
img_type - name of parameter used as the pixel data type.
|
||||
img_target - name of parameter used as a texture target. Non-texture
|
||||
pixel data should hardcode 0.
|
||||
img_send_null - boolean flag to determine if blank pixel data should
|
||||
be sent when a NULL pointer is passed. This is only used by
|
||||
TexImage1D and TexImage2D.
|
||||
img_null_flag - boolean flag to determine if an extra flag is used to
|
||||
determine if a NULL pixel pointer was passed. This is used by
|
||||
TexSubImage1D, TexSubImage2D, TexImage3D and others.
|
||||
img_pad_dimensions - boolean flag to determine if dimension data and
|
||||
offset data should be padded to the next even number of dimensions.
|
||||
For example, this will insert an empty "height" field after the
|
||||
"width" field in the protocol for TexImage1D.
|
||||
|
||||
glx:
|
||||
rop - Opcode value for "render" commands
|
||||
sop - Opcode value for "single" commands
|
||||
vendorpriv - Opcode value for vendor private (or vendor private with
|
||||
reply) commands
|
||||
large - set to "true" of the render command can use RenderLarge protocol.
|
||||
doubles_in_order - older commands always put GLdouble data at the
|
||||
start of the render packet. Newer commands (e.g.,
|
||||
ProgramEnvParameter4dvARB) put the in the order that they appear
|
||||
in the parameter list.
|
||||
always_array - some single commands take reply data as an array or as
|
||||
return value data (e.g., glGetLightfv). Other single commands take
|
||||
reply data only as an array (e.g., glGetClipPlane).
|
||||
handcode - some functions are just too complicated to generate
|
||||
(e.g., glSeperableFilter2D) or operate only on client-side data
|
||||
(e.g., glVertexPointer) and must be handcoded.
|
||||
ignore - some functions have an entry in the dispatch table, but aren't
|
||||
suitable for protocol implementation (e.g., glLockArraysEXT). This
|
||||
also applies to functions that don't have any GLX protocol specified
|
||||
(e.g., glGetFogFuncSGIS).
|
||||
-->
|
||||
<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
|
||||
|
||||
<OpenGLAPI>
|
||||
|
||||
|
Reference in New Issue
Block a user