15bd8deadSopenharmony_ciXXX - not complete yet!
25bd8deadSopenharmony_ci
35bd8deadSopenharmony_ciName
45bd8deadSopenharmony_ci
55bd8deadSopenharmony_ci    SGIS_texture4D
65bd8deadSopenharmony_ci
75bd8deadSopenharmony_ciName Strings
85bd8deadSopenharmony_ci
95bd8deadSopenharmony_ci    GL_SGIS_texture4D
105bd8deadSopenharmony_ci
115bd8deadSopenharmony_ciVersion
125bd8deadSopenharmony_ci
135bd8deadSopenharmony_ci    $Date: 1997/03/15 02:52:10 $ $Revision: 1.25 $
145bd8deadSopenharmony_ci
155bd8deadSopenharmony_ciNumber
165bd8deadSopenharmony_ci
175bd8deadSopenharmony_ci    16
185bd8deadSopenharmony_ci
195bd8deadSopenharmony_ciDependencies
205bd8deadSopenharmony_ci
215bd8deadSopenharmony_ci    EXT_abgr affects the definition of this extension
225bd8deadSopenharmony_ci    EXT_texture is required
235bd8deadSopenharmony_ci    EXT_texture3D is required
245bd8deadSopenharmony_ci    EXT_subtexture affects the definition of this extension
255bd8deadSopenharmony_ci
265bd8deadSopenharmony_ciOverview
275bd8deadSopenharmony_ci
285bd8deadSopenharmony_ci    This extension defines 4-dimensional texture mapping.  If EXT_subtexture
295bd8deadSopenharmony_ci    is supported, this extension also defines a mechanism to redefine a
305bd8deadSopenharmony_ci    portion of an existing 4-dimensional texture image.  Because
315bd8deadSopenharmony_ci    EXT_texture3D is required, this extension utilizes the 3-dimensional
325bd8deadSopenharmony_ci    image support defined in by EXT_texture3D as a base for 4-dimensional
335bd8deadSopenharmony_ci    image manipulation.
345bd8deadSopenharmony_ci    
355bd8deadSopenharmony_ci    The 4th dimension has an abstract, rather than physical, reference
365bd8deadSopenharmony_ci    and will be called "extent", since the definition of extent is "that which
375bd8deadSopenharmony_ci    specifies the range or magnitude of an area or volume."
385bd8deadSopenharmony_ci
395bd8deadSopenharmony_ci    Four-dimensional texture mapping is more constrained than its one, two,
405bd8deadSopenharmony_ci    and three-dimensional counterparts.  Mipmapping is not supported, so
415bd8deadSopenharmony_ci    only the level-zero 4-dimensional texture image can be defined.  Cubic
425bd8deadSopenharmony_ci    filtering is not supported, so the border width must be either zero or
435bd8deadSopenharmony_ci    one.
445bd8deadSopenharmony_ci
455bd8deadSopenharmony_ci    Four-dimensional textures are used primarily as color lookup tables for
465bd8deadSopenharmony_ci    color conversion.
475bd8deadSopenharmony_ci
485bd8deadSopenharmony_ciNew Procedures and Functions
495bd8deadSopenharmony_ci
505bd8deadSopenharmony_ci    void TexImage4DSGIS(enum target,
515bd8deadSopenharmony_ci		        int level,
525bd8deadSopenharmony_ci		        enum internalformat,
535bd8deadSopenharmony_ci		        sizei width,
545bd8deadSopenharmony_ci		        sizei height,
555bd8deadSopenharmony_ci		        sizei depth,
565bd8deadSopenharmony_ci		        sizei extent,
575bd8deadSopenharmony_ci		        int border,
585bd8deadSopenharmony_ci		        enum format,
595bd8deadSopenharmony_ci		        enum type,
605bd8deadSopenharmony_ci		        const void* pixels);
615bd8deadSopenharmony_ci
625bd8deadSopenharmony_ci    void TexSubImage4DSGIS(enum target,
635bd8deadSopenharmony_ci		 	   int level,
645bd8deadSopenharmony_ci			   int xoffset,
655bd8deadSopenharmony_ci		 	   int yoffset,
665bd8deadSopenharmony_ci			   int zoffset,
675bd8deadSopenharmony_ci			   int woffset,
685bd8deadSopenharmony_ci			   sizei width,
695bd8deadSopenharmony_ci			   sizei height,
705bd8deadSopenharmony_ci			   sizei depth,
715bd8deadSopenharmony_ci			   sizei extent,
725bd8deadSopenharmony_ci			   enum format,
735bd8deadSopenharmony_ci			   enum type,
745bd8deadSopenharmony_ci			   const void* pixels);
755bd8deadSopenharmony_ci
765bd8deadSopenharmony_ciNew Tokens
775bd8deadSopenharmony_ci
785bd8deadSopenharmony_ci    Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
795bd8deadSopenharmony_ci    GetFloatv, and GetDoublev, and by the <pname> parameter of PixelStore:
805bd8deadSopenharmony_ci
815bd8deadSopenharmony_ci	PACK_SKIP_VOLUMES_SGIS
825bd8deadSopenharmony_ci	PACK_IMAGE_DEPTH_SGIS
835bd8deadSopenharmony_ci	UNPACK_SKIP_VOLUMES_SGIS
845bd8deadSopenharmony_ci	UNPACK_IMAGE_DEPTH_SGIS
855bd8deadSopenharmony_ci
865bd8deadSopenharmony_ci    Accepted by the <cap> parameter of Enable, Disable, and IsEnabled, by
875bd8deadSopenharmony_ci    the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv, and
885bd8deadSopenharmony_ci    GetDoublev, and by the <target> parameter of TexImage4DSGIS, GetTexImage,
895bd8deadSopenharmony_ci    GetTexLevelParameteriv, GetTexLevelParameterfv, GetTexParameteriv, and
905bd8deadSopenharmony_ci    GetTexParameterfv:
915bd8deadSopenharmony_ci
925bd8deadSopenharmony_ci	TEXTURE_4D_SGIS
935bd8deadSopenharmony_ci
945bd8deadSopenharmony_ci    Accepted by the <target> parameter of TexImage4DSGIS,
955bd8deadSopenharmony_ci    GetTexLevelParameteriv, and GetTexLevelParameterfv:
965bd8deadSopenharmony_ci
975bd8deadSopenharmony_ci	PROXY_TEXTURE_4D_SGIS
985bd8deadSopenharmony_ci
995bd8deadSopenharmony_ci    Accepted by the <pname> parameter of GetTexLevelParameteriv and
1005bd8deadSopenharmony_ci    GetTexLevelParameterfv:
1015bd8deadSopenharmony_ci
1025bd8deadSopenharmony_ci	TEXTURE_4DSIZE_SGIS
1035bd8deadSopenharmony_ci
1045bd8deadSopenharmony_ci    Accepted by the <pname> parameter of TexParameteriv, TexParameterfv,
1055bd8deadSopenharmony_ci    GetTexParameteriv, and GetTexParameterfv:
1065bd8deadSopenharmony_ci
1075bd8deadSopenharmony_ci	TEXTURE_WRAP_Q_SGIS
1085bd8deadSopenharmony_ci
1095bd8deadSopenharmony_ci    Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
1105bd8deadSopenharmony_ci    GetFloatv, and GetDoublev:
1115bd8deadSopenharmony_ci
1125bd8deadSopenharmony_ci	MAX_4D_TEXTURE_SIZE_SGIS
1135bd8deadSopenharmony_ci	TEXTURE_4D_BINDING_SGIS
1145bd8deadSopenharmony_ci
1155bd8deadSopenharmony_ci
1165bd8deadSopenharmony_ci
1175bd8deadSopenharmony_ciAdditions to Chapter 2 of the 1.0 Specification (OpenGL Operation)
1185bd8deadSopenharmony_ci
1195bd8deadSopenharmony_ci    None
1205bd8deadSopenharmony_ci
1215bd8deadSopenharmony_ciAdditions to Chapter 3 of the 1.0 Specification (Rasterization)
1225bd8deadSopenharmony_ci
1235bd8deadSopenharmony_ci    XXX - not written yet.  Be sure to handle the null image case.
1245bd8deadSopenharmony_ci
1255bd8deadSopenharmony_ciAdditions to Chapter 4 of the 1.0 Specification (Per-Fragment Operations
1265bd8deadSopenharmony_ciand the Framebuffer)
1275bd8deadSopenharmony_ci
1285bd8deadSopenharmony_ci    None
1295bd8deadSopenharmony_ci
1305bd8deadSopenharmony_ciAdditions to Chapter 5 of the 1.0 Specification (Special Functions)
1315bd8deadSopenharmony_ci
1325bd8deadSopenharmony_ci    TexImage4DSGIS with a proxy target is not included in display
1335bd8deadSopenharmony_ci    lists, but is instead executed immediately.
1345bd8deadSopenharmony_ci
1355bd8deadSopenharmony_ciAdditions to Chapter 6 of the 1.0 Specification (State and State Requests)
1365bd8deadSopenharmony_ci
1375bd8deadSopenharmony_ci    4-dimensional texture images are queried using GetTexImage with its
1385bd8deadSopenharmony_ci    <target> parameter set to TEXTURE_4D_SGIS.  The assignment of texel
1395bd8deadSopenharmony_ci    component values to the initial R, G, B, and A components of a pixel
1405bd8deadSopenharmony_ci    group is described in EXT_texture.  Pixel transfer and pixel storage
1415bd8deadSopenharmony_ci    operations are applied as if the image were 3-dimensional, except that
1425bd8deadSopenharmony_ci    the additional pixel storage state values PACK_IMAGE_DEPTH_SGIS and
1435bd8deadSopenharmony_ci    PACK_SKIP_VOLUMES_SGIS affect the storage of the image into memory.  The
1445bd8deadSopenharmony_ci    correspondence of texels to memory locations is as defined for
1455bd8deadSopenharmony_ci    TexImage4DSGIS above, substituting PACK* state for UNPACK* state in all
1465bd8deadSopenharmony_ci    occurrences.
1475bd8deadSopenharmony_ci
1485bd8deadSopenharmony_ciAdditions to the GLX Specification
1495bd8deadSopenharmony_ci
1505bd8deadSopenharmony_ci    None
1515bd8deadSopenharmony_ci
1525bd8deadSopenharmony_ciGLX Protocol
1535bd8deadSopenharmony_ci
1545bd8deadSopenharmony_ci    A new GL rendering command is added. This command contains pixel data;
1555bd8deadSopenharmony_ci    thus it is sent to the server either as part of a glXRender request
1565bd8deadSopenharmony_ci    or as part of a glXRenderLarge request:
1575bd8deadSopenharmony_ci
1585bd8deadSopenharmony_ci        TexImage4DSGIS
1595bd8deadSopenharmony_ci            2           84+n+p          rendering command length
1605bd8deadSopenharmony_ci            2           2057            rendering command opcode
1615bd8deadSopenharmony_ci 	    1		BOOL		swap_bytes
1625bd8deadSopenharmony_ci	    1		BOOL		lsb_first
1635bd8deadSopenharmony_ci	    2 				unused
1645bd8deadSopenharmony_ci	    4		CARD32		row_length
1655bd8deadSopenharmony_ci	    4		CARD32		image_height
1665bd8deadSopenharmony_ci	    4		CARD32		image_depth
1675bd8deadSopenharmony_ci	    4		CARD32		skip_rows
1685bd8deadSopenharmony_ci	    4		CARD32		skip_images
1695bd8deadSopenharmony_ci	    4		CARD32		skip_volumes
1705bd8deadSopenharmony_ci	    4		CARD32		skip_pixels
1715bd8deadSopenharmony_ci	    4		CARD32		alignment
1725bd8deadSopenharmony_ci            4		ENUM		target
1735bd8deadSopenharmony_ci	    4		INT32		level
1745bd8deadSopenharmony_ci            4		ENUM		internalformat
1755bd8deadSopenharmony_ci            4		INT32		width
1765bd8deadSopenharmony_ci            4		INT32		height
1775bd8deadSopenharmony_ci            4		INT32		depth
1785bd8deadSopenharmony_ci            4		INT32		size4d
1795bd8deadSopenharmony_ci            4		INT32		border
1805bd8deadSopenharmony_ci            4		ENUM		format
1815bd8deadSopenharmony_ci            4		ENUM		type
1825bd8deadSopenharmony_ci	    4		CARD32		null_image
1835bd8deadSopenharmony_ci            n           LISTofBYTE      pixels
1845bd8deadSopenharmony_ci            p                           unused, p=pad(n)
1855bd8deadSopenharmony_ci
1865bd8deadSopenharmony_ci            If the command is encoded in a glXRenderLarge request, the command 
1875bd8deadSopenharmony_ci            opcode and command length fields above are expanded to 4 bytes each:
1885bd8deadSopenharmony_ci
1895bd8deadSopenharmony_ci	    4           88+n+p          rendering command length
1905bd8deadSopenharmony_ci            4           2057            rendering command opcode
1915bd8deadSopenharmony_ci
1925bd8deadSopenharmony_ci	If <width> < 0, <height> < 0, <depth> < 0, <size4d> < 0, <format> is invalid i
1935bd8deadSopenharmony_ci	or <type> is invalid, then the command is erroneous and n=0.
1945bd8deadSopenharmony_ci
1955bd8deadSopenharmony_ci        <pixels> is arranged as a sequence of adjacent volumes. Each volume is a
1965bd8deadSopenharmony_ci        3-dimensional image, whose structure is determined by the image depth and the 
1975bd8deadSopenharmony_ci        parameters <image_height>, <swap_bytes>, <lsb_first>, <row_length>, <skip_rows>,
1985bd8deadSopenharmony_ci	<skip_pixels>, <alignment>, <width>, <format>, and <type> given in the request. 
1995bd8deadSopenharmony_ci	If <image_depth> is not positive then the number of images (i.e., the image 
2005bd8deadSopenharmony_ci	depth) is <depth>; otherwise the number of images is <image_depth>.
2015bd8deadSopenharmony_ci
2025bd8deadSopenharmony_ci        <skip_volumes> allows a sub-piece of the 4-dimensional image to be selected.
2035bd8deadSopenharmony_ci        If <skip_volumes> is positive, then the pointer is advanced by <skip_volumes> 
2045bd8deadSopenharmony_ci        times the number of elements in one 3-dimensional image. Then <size4d> 
2055bd8deadSopenharmony_ci        3-dimensional images are read, each having a subimage extracted in the 
2065bd8deadSopenharmony_ci        manner described in Appendix A of the GLX Protocol Specification.
2075bd8deadSopenharmony_ci
2085bd8deadSopenharmony_ci        TexSubImage4DSGIS
2095bd8deadSopenharmony_ci            2           88+n+p          rendering command length
2105bd8deadSopenharmony_ci            2           2058            rendering command opcode
2115bd8deadSopenharmony_ci            1           BOOL            swap_bytes
2125bd8deadSopenharmony_ci            1           BOOL            lsb_first
2135bd8deadSopenharmony_ci            2                           unused
2145bd8deadSopenharmony_ci            4           CARD32          row_length
2155bd8deadSopenharmony_ci            4           CARD32          image_height
2165bd8deadSopenharmony_ci            4           CARD32          image_depth
2175bd8deadSopenharmony_ci            4           CARD32          skip_rows
2185bd8deadSopenharmony_ci            4           CARD32          skip_images
2195bd8deadSopenharmony_ci            4           CARD32          skip_volumes
2205bd8deadSopenharmony_ci            4           CARD32          skip_pixels
2215bd8deadSopenharmony_ci            4           CARD32          alignment
2225bd8deadSopenharmony_ci            4           ENUM            target
2235bd8deadSopenharmony_ci            4           INT32           level
2245bd8deadSopenharmony_ci            4           INT32           xoffset
2255bd8deadSopenharmony_ci            4           INT32           yoffset
2265bd8deadSopenharmony_ci            4           INT32           zoffset
2275bd8deadSopenharmony_ci            4           INT32           woffset
2285bd8deadSopenharmony_ci            4           INT32           width
2295bd8deadSopenharmony_ci            4           INT32           height
2305bd8deadSopenharmony_ci            4           INT32           depth
2315bd8deadSopenharmony_ci            4           INT32           size4d
2325bd8deadSopenharmony_ci            4           ENUM            format
2335bd8deadSopenharmony_ci            4           ENUM            type
2345bd8deadSopenharmony_ci            4           CARD32		unused
2355bd8deadSopenharmony_ci            n           LISTofBYTE      image
2365bd8deadSopenharmony_ci            p                           unused, p=pad(n)
2375bd8deadSopenharmony_ci
2385bd8deadSopenharmony_ci            If the command is encoded in a glXRenderLarge request, the command
2395bd8deadSopenharmony_ci            opcode and command length fields above are expanded to 4 bytes each:
2405bd8deadSopenharmony_ci
2415bd8deadSopenharmony_ci            4           92+n+p          rendering command length
2425bd8deadSopenharmony_ci            4           2058            rendering command opcode
2435bd8deadSopenharmony_ci
2445bd8deadSopenharmony_ci	If <width> < 0, <height> < 0, <depth> < 0, <size4d>, <format> is invalid 
2455bd8deadSopenharmony_ci	or <type> is invalid, then the command is erroneous and n=0.
2465bd8deadSopenharmony_ci
2475bd8deadSopenharmony_ci        <pixels> is arranged as a sequence of adjacent volumes. Each volume is a
2485bd8deadSopenharmony_ci        3-dimensional image, whose structure is determined by the image height, image 
2495bd8deadSopenharmony_ci	depth and the parameters <swap_bytes>, <lsb_first>, <row_length>, <skip_rows>, 
2505bd8deadSopenharmony_ci	<skip_pixels>, <alignment>, <width>, <format>, and <type> given in the request. 
2515bd8deadSopenharmony_ci	If <image_depth> is not positive then the number of 2Dimages (i.e., the volume
2525bd8deadSopenharmony_ci	depth) is <depth>; otherwise the number of 2Dimages is <image_depth>.
2535bd8deadSopenharmony_ci
2545bd8deadSopenharmony_ci        <skip_volumes> allows a sub-volume of the 4-dimensional image to be selected.
2555bd8deadSopenharmony_ci        If <skip_volumes> is positive, then the pointer is advanced by <skip_volumes>
2565bd8deadSopenharmony_ci        times the number of elements in one 3-dimensional image. Then <size4d>
2575bd8deadSopenharmony_ci        3-dimensional images are read, each having a subimage extracted in the
2585bd8deadSopenharmony_ci        manner described in Appendix A of the GLX Protocol Specification.
2595bd8deadSopenharmony_ci
2605bd8deadSopenharmony_ciDependencies on EXT_abgr
2615bd8deadSopenharmony_ci
2625bd8deadSopenharmony_ci    If EXT_abgr is supported, the <format> parameter of TexImage4DSGIS
2635bd8deadSopenharmony_ci    accepts ABGR_EXT.  Otherwise it does not.
2645bd8deadSopenharmony_ci
2655bd8deadSopenharmony_ciDependencies on EXT_texture
2665bd8deadSopenharmony_ci
2675bd8deadSopenharmony_ci    EXT_texture is required.  All of the <components> tokens defined by
2685bd8deadSopenharmony_ci    EXT_texture are accepted by the <internalformat> parameter of
2695bd8deadSopenharmony_ci    TexImage4DSGIS, with the same semantics that are defined by EXT_texture.
2705bd8deadSopenharmony_ci
2715bd8deadSopenharmony_ci    The query and error extensions defined by EXT_texture are extended in
2725bd8deadSopenharmony_ci    this document.
2735bd8deadSopenharmony_ci
2745bd8deadSopenharmony_ciDependencies on EXT_texture3D
2755bd8deadSopenharmony_ci
2765bd8deadSopenharmony_ci    EXT_texture3D is required, because the 3-dimensional image support that
2775bd8deadSopenharmony_ci    it defines is used by this extension, and because it doesn't make sense
2785bd8deadSopenharmony_ci    to support 4D textures if 3D textures are not supported.
2795bd8deadSopenharmony_ci
2805bd8deadSopenharmony_ciDependencies on EXT_subtexture
2815bd8deadSopenharmony_ci
2825bd8deadSopenharmony_ci    If EXT_subtexture is not supported, this extension does not define
2835bd8deadSopenharmony_ci    TexSubImage4DSGIS.  All discussion of replacing a subset of the image of
2845bd8deadSopenharmony_ci    an existing 4-dimensional texture is void.
2855bd8deadSopenharmony_ci
2865bd8deadSopenharmony_ciErrors
2875bd8deadSopenharmony_ci
2885bd8deadSopenharmony_ci    INVALID_ENUM is generated if TexImage4DSGIS parameter <target> is not
2895bd8deadSopenharmony_ci    TEXTURE_4D_SGIS.
2905bd8deadSopenharmony_ci
2915bd8deadSopenharmony_ci    INVALID_VALUE is generated if TexImage4DSGIS parameter <level> is less
2925bd8deadSopenharmony_ci    than zero.
2935bd8deadSopenharmony_ci
2945bd8deadSopenharmony_ci    INVALID_ENUM is generated if TexImage4DSGIS parameter <internalformat> is
2955bd8deadSopenharmony_ci    not ALPHA, RGB, RGBA, LUMINANCE, LUMINANCE_ALPHA, or one of the tokens
2965bd8deadSopenharmony_ci    defined by the EXT_texture extension.  (Values 1, 2, 3, and 4 are not
2975bd8deadSopenharmony_ci    accepted as internal formats by TexImage4DSGIS).
2985bd8deadSopenharmony_ci
2995bd8deadSopenharmony_ci    INVALID_VALUE is generated if TexImage4DSGIS parameter <width>, <height>,
3005bd8deadSopenharmony_ci    or <depth> is less than zero, or cannot be represented as
3015bd8deadSopenharmony_ci    2**k + 2*border for some integer k.
3025bd8deadSopenharmony_ci
3035bd8deadSopenharmony_ci    INVALID_VALUE is generated if TexImage4DSGIS parameter <border> is not 0
3045bd8deadSopenharmony_ci    or 1.
3055bd8deadSopenharmony_ci
3065bd8deadSopenharmony_ci    INVALID_ENUM is generated if TexImage4DSGIS parameter <format> is not
3075bd8deadSopenharmony_ci    COLOR_INDEX, RED, GREEN, BLUE, ALPHA, RGB, RGBA, LUMINANCE, or
3085bd8deadSopenharmony_ci    LUMINANCE_ALPHA (or ABGR_EXT if EXT_abgr is supported).
3095bd8deadSopenharmony_ci
3105bd8deadSopenharmony_ci    INVALID_ENUM is generated if TexImage4DSGIS parameter <type> is not
3115bd8deadSopenharmony_ci    UNSIGNED_BYTE, BYTE, UNSIGNED_SHORT, SHORT, UNSIGNED_INT, INT, or FLOAT.
3125bd8deadSopenharmony_ci
3135bd8deadSopenharmony_ci    INVALID_OPERATION is generated if TexImage4DSGIS is called between
3145bd8deadSopenharmony_ci    execution of Begin and the corresponding execution of End.
3155bd8deadSopenharmony_ci
3165bd8deadSopenharmony_ci    TEXTURE_TOO_LARGE_SGI is generated if the texture as specified cannot be
3175bd8deadSopenharmony_ci    accommodated by the implementation.  This error will not occur if none
3185bd8deadSopenharmony_ci    of <width>, <height>, or <depth> is greater than MAX_4D_TEXTURE_SIZE_SGIS.
3195bd8deadSopenharmony_ci
3205bd8deadSopenharmony_ci    INVALID_ENUM is generated by TexSubImage4DSGIS if its <target> parameter
3215bd8deadSopenharmony_ci    is not TEXTURE_4D_SGIS.
3225bd8deadSopenharmony_ci
3235bd8deadSopenharmony_ci    INVALID_VALUE is generated by TexSubImage4DSGIS if the specified texture
3245bd8deadSopenharmony_ci    array has not been defined by a previous TexImage4DSGIS operation.
3255bd8deadSopenharmony_ci
3265bd8deadSopenharmony_ci    INVALID_VALUE is generated if TexSubImage4DSGIS parameter <level> is not
3275bd8deadSopenharmony_ci    equal to zero.
3285bd8deadSopenharmony_ci
3295bd8deadSopenharmony_ci    INVALID_VALUE is generated if TexSubImage4DSGIS parameter <width>,
3305bd8deadSopenharmony_ci    <height>, <depth>, or <extent> is negative.
3315bd8deadSopenharmony_ci    
3325bd8deadSopenharmony_ci    INVALID_VALUE is generated if TexSubImage4DSGIS parameter <xoffset>,
3335bd8deadSopenharmony_ci    <yoffset>, <zoffset>, or <woffset> is less than -TEXTURE_BORDER.
3345bd8deadSopenharmony_ci
3355bd8deadSopenharmony_ci    INVALID_VALUE is generated by TexSubImage4DSGIS if
3365bd8deadSopenharmony_ci	(xoffset + width) > (TEXTURE_WIDTH - TEXTURE_BORDER), or if
3375bd8deadSopenharmony_ci	(yoffset + height) > (TEXTURE_HEIGHT - TEXTURE_BORDER), or if
3385bd8deadSopenharmony_ci	(zoffset + depth) > (TEXTURE_DEPTH_EXT - TEXTURE_BORDER), or if
3395bd8deadSopenharmony_ci	(woffset + extent) > (TEXTURE_4DSIZE_SGIS - TEXTURE_BORDER).
3405bd8deadSopenharmony_ci
3415bd8deadSopenharmony_ci    INVALID_ENUM is generated if TexSubImage4DSGIS parameter <format> is not
3425bd8deadSopenharmony_ci    COLOR_INDEX, RED, GREEN, BLUE, ALPHA, RGB, RGBA, LUMINANCE, or
3435bd8deadSopenharmony_ci    LUMINANCE_ALPHA (or ABGR_EXT if EXT_abgr is supported).
3445bd8deadSopenharmony_ci
3455bd8deadSopenharmony_ci    INVALID_ENUM is generated if TexSubImage4DSGIS parameter <type> is not
3465bd8deadSopenharmony_ci    UNSIGNED_BYTE, BYTE, UNSIGNED_SHORT, SHORT, UNSIGNED_INT, INT, or FLOAT.
3475bd8deadSopenharmony_ci
3485bd8deadSopenharmony_ci    INVALID_OPERATION is generated if TexSubImage4DSGIS is called between
3495bd8deadSopenharmony_ci    execution of Begin and the corresponding execution of End.
3505bd8deadSopenharmony_ci
3515bd8deadSopenharmony_ciNew State
3525bd8deadSopenharmony_ci
3535bd8deadSopenharmony_ci    Get Value				Get Command		Type			Initial Value		Attribute
3545bd8deadSopenharmony_ci    ---------				-----------		----			-------------		---------
3555bd8deadSopenharmony_ci    UNPACK_SKIP_VOLUMES_SGIS		GetIntegerv		Z+			0			    -
3565bd8deadSopenharmony_ci    UNPACK_IMAGE_DEPTH_SGIS		GetIntegerv		Z+			0			    -
3575bd8deadSopenharmony_ci    PACK_SKIP_VOLUMES_SGIS		GetIntegerv		Z+			0			    -
3585bd8deadSopenharmony_ci    PACK_IMAGE_DEPTH_SGIS		GetIntegerv		Z+			0			    -
3595bd8deadSopenharmony_ci    TEXTURE_4D_SGIS			IsEnabled		B			FALSE			texture/enable
3605bd8deadSopenharmony_ci    TEXTURE_WRAP_Q_SGIS			GetTexParameteriv	1 x Z2			REPEAT			texture
3615bd8deadSopenharmony_ci    TEXTURE_4DSIZE_SGIS			GetTexLevelParameteriv	1 x 2 x Z+		0			    -
3625bd8deadSopenharmony_ci
3635bd8deadSopenharmony_ci    TEXTURE				GetTexImage		4 x 1 x levels x I	null			    -
3645bd8deadSopenharmony_ci    TEXTURE_RED_SIZE_EXT		GetTexLevelParameteriv	4 x 2 x levels x Z+	0			    -
3655bd8deadSopenharmony_ci    TEXTURE_GREEN_SIZE_EXT		GetTexLevelParameteriv	4 x 2 x levels x Z+	0			    -
3665bd8deadSopenharmony_ci    TEXTURE_BLUE_SIZE_EXT		GetTexLevelParameteriv	4 x 2 x levels x Z+	0			    -
3675bd8deadSopenharmony_ci    TEXTURE_ALPHA_SIZE_EXT		GetTexLevelParameteriv	4 x 2 x levels x Z+	0			    -
3685bd8deadSopenharmony_ci    TEXTURE_LUMINANCE_SIZE_EXT		GetTexLevelParameteriv	4 x 2 x levels x Z+	0			    -
3695bd8deadSopenharmony_ci    TEXTURE_INTENSITY_SIZE_EXT		GetTexLevelParameteriv	4 x 2 x levels x Z+	0			    -
3705bd8deadSopenharmony_ci    TEXTURE_WIDTH			GetTexLevelParameteriv	4 x 2 x levels x Z+	0			    -
3715bd8deadSopenharmony_ci    TEXTURE_HEIGHT			GetTexLevelParameteriv	3 x 2 x levels x Z+	0			    -
3725bd8deadSopenharmony_ci    TEXTURE_DEPTH_EXT			GetTexLevelParameteriv	2 x 2 x levels x Z+	0			    -
3735bd8deadSopenharmony_ci    TEXTURE_BORDER			GetTexLevelParameteriv	4 x 2 x levels x Z+	0			    -
3745bd8deadSopenharmony_ci    TEXTURE_COMPONENTS (1D and 2D)	GetTexLevelParameteriv	2 x 2 x levels x Z42	1			    -
3755bd8deadSopenharmony_ci    TEXTURE_COMPONENTS (3D and 4D)	GetTexLevelParameteriv	2 x 2 x levels x Z38	LUMINANCE		    -
3765bd8deadSopenharmony_ci    TEXTURE_BORDER_COLOR		GetTexParameteriv	4 x C			0, 0, 0, 0		texture
3775bd8deadSopenharmony_ci    TEXTURE_MIN_FILTER			GetTexParameteriv	4 x Z7			NEAREST_MIPMAP_LINEAR	texture
3785bd8deadSopenharmony_ci    TEXTURE_MAG_FILTER			GetTexParameteriv	4 x Z3			LINEAR			texture
3795bd8deadSopenharmony_ci    TEXTURE_WRAP_S			GetTexParameteriv	4 x Z2			REPEAT			texture
3805bd8deadSopenharmony_ci    TEXTURE_WRAP_T			GetTexParameteriv	3 x Z2			REPEAT			texture
3815bd8deadSopenharmony_ci    TEXTURE_WRAP_R_EXT			GetTexParameteriv	2 x Z2			REPEAT			texture
3825bd8deadSopenharmony_ci
3835bd8deadSopenharmony_ciNew Implementation Dependent State
3845bd8deadSopenharmony_ci
3855bd8deadSopenharmony_ci    Get Value			Get Command	Type		Minimum Value
3865bd8deadSopenharmony_ci    ---------			-----------	----		-------------
3875bd8deadSopenharmony_ci    MAX_4D_TEXTURE_SIZE_SGIS	GetIntegerv	Z+		16
388