diff options
| author | Ian Romanick <idr@us.ibm.com> | 2005-04-18 18:36:57 +0000 | 
|---|---|---|
| committer | Ian Romanick <idr@us.ibm.com> | 2005-04-18 18:36:57 +0000 | 
| commit | 61f08d8094cebffd18e47eb684bb6bcd54d17189 (patch) | |
| tree | fc8d07bb83213f276685ec6f1fe80add6c9142de /src/mesa | |
| parent | f905145b6087fca66368bfff5c62788a626f1298 (diff) | |
Move the DTD to its own file.
Diffstat (limited to 'src/mesa')
| -rw-r--r-- | src/mesa/glapi/gl_API.dtd | 120 | ||||
| -rw-r--r-- | src/mesa/glapi/gl_API.xml | 123 | 
2 files changed, 121 insertions, 122 deletions
diff --git a/src/mesa/glapi/gl_API.dtd b/src/mesa/glapi/gl_API.dtd new file mode 100644 index 0000000000..352e1b53a5 --- /dev/null +++ b/src/mesa/glapi/gl_API.dtd @@ -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). +--> diff --git a/src/mesa/glapi/gl_API.xml b/src/mesa/glapi/gl_API.xml index e583c39e38..2ce70957fc 100644 --- a/src/mesa/glapi/gl_API.xml +++ b/src/mesa/glapi/gl_API.xml @@ -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>  | 
