Name QCOM_extended_get Name Strings GL_QCOM_extended_get Contributors Jukka Liimatta James Ritts Contact Jukka Liimatta (jukka.liimatta 'at' qualcomm.com) Notice Copyright Qualcomm 2009. IP Status Qualcomm Proprietary. Status Complete. Version Last Modified Date: May 14, 2009 Revision: #1 Number OpenGL ES Extension #62 Dependencies OpenGL ES 1.0 or higher is required. Overview This extension enables instrumenting the driver for debugging of OpenGL ES applications. New Procedures and Functions void ExtGetTexturesQCOM(uint* textures, int maxTextures, int* numTextures); void ExtGetBuffersQCOM(uint* buffers, int maxBuffers, int* numBuffers); void ExtGetRenderbuffersQCOM(uint* renderbuffers, int maxRenderbuffers, int* numRenderbuffers); void ExtGetFramebuffersQCOM(uint* framebuffers, int maxFramebuffers, int* numFramebuffers); void ExtGetTexLevelParameterivQCOM(uint texture, enum face, int level, enum pname, int* params); void ExtTexObjectStateOverrideiQCOM(enum target, enum pname, int param); void ExtGetTexSubImageQCOM(enum target, int level, int xoffset, int yoffset, int zoffset, sizei width, sizei height, sizei depth, enum format, enum type, void *texels); void ExtGetBufferPointervQCOM(enum target, void **params) New Tokens Accepted by the parameter of ExtGetTexLevelParameterivQCOM TEXTURE_WIDTH_QCOM 0x8BD2 TEXTURE_HEIGHT_QCOM 0x8BD3 TEXTURE_DEPTH_QCOM 0x8BD4 TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5 TEXTURE_FORMAT_QCOM 0x8BD6 TEXTURE_TYPE_QCOM 0x8BD7 TEXTURE_IMAGE_VALID_QCOM 0x8BD8 TEXTURE_NUM_LEVELS_QCOM 0x8BD9 TEXTURE_TARGET_QCOM 0x8BDA TEXTURE_OBJECT_VALID_QCOM 0x8BDB Accepted by the parameter of ExtTexObjectStateOverrideiQCOM TEXTURE_2D TEXTURE_CUBE_MAP TEXTURE_3D_OES TEXTURE_EXTERNAL_OES Accepted by the parameter of ExtTexObjectStateOverrideiQCOM STATE_RESTORE 0x8BDC TEXTURE_MIN_FILTER TEXTURE_MAG_FILTER TEXTURE_WIDTH_QCOM TEXTURE_HEIGHT_QCOM TEXTURE_DEPTH_QCOM Accepted by the parameter of ExtGetTexSubImageQCOM TEXTURE_2D TEXTURE_3D TEXTURE_CUBE_MAP_POSITIVE_X TEXTURE_CUBE_MAP_NEGATIVE_X TEXTURE_CUBE_MAP_POSITIVE_Y TEXTURE_CUBE_MAP_NEGATIVE_Y TEXTURE_CUBE_MAP_POSITIVE_Z TEXTURE_CUBE_MAP_NEGATIVE_Z Accepted by the parameter of ExtGetTexSubImageQCOM ALPHA LUMINANCE LUMINANCE_ALPHA RGB RGBA ATC_RGB_AMD ATC_RGBA_EXPLICIT_ALPHA_AMD ATC_RGBA_INTERPOLATED_ALPHA_AMD Accepted by the parameter of ExtGetTexSubImageQCOM UNSIGNED_BYTE UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_4_4_4_4 HALF_FLOAT_OES FLOAT Accepted by the parameter of ExtGetBufferPointervQCOM ARRAY_BUFFER ELEMENT_ARRAY_BUFFER Additions to OpenGL ES 1.1 Specification The command void ExtGetTexturesQCOM(uint* textures, int maxTextures, int* numTextures); returns list of texture objects in the current render context. The command void ExtGetBuffersQCOM(uint* buffers, int maxBuffers, int* numBuffers); returns list of buffer objects in the current render context. The command void ExtGetRenderbuffersQCOM(uint* renderbuffers, int maxRenderbuffers, int* numRenderbuffers); returns list of render buffer objects in the current render context. The command void ExtGetFramebuffersQCOM(uint* framebuffers, int maxFramebuffers, int* numFramebuffers); returns list of frame buffer objects in the current render context. The command void ExtGetTexLevelParameterivQCOM(uint texture, enum face, int level, enum pname, int* params); returns parameters for texture level chosen with , and . The command void ExtTexObjectStateOverrideiQCOM(enum target, enum pname, int param); overrides texture parameter for current texture in the . The state chosen with the argument is restored with value STATE_RESTORE. The STATE_RESTORE has the same effect as calling TexParameteri(enum target, enum pname, int param). The command void ExtGetTexSubImageQCOM(enum target, int level, int xoffset, int yoffset, int zoffset, sizei width, sizei height, sizei depth, enum format, enum type, void *texels); copies texels from current texture in to address in parameter. The command void ExtGetBufferPointervQCOM(enum target, void **params) returns pointer to the buffer chosen with . Errors INVALID_VALUE error will be generated if the parameter to ExtGetTexLevelParameterivQCOM does not reference to a valid texture object. INVALID_ENUM error will be generated if the parameter to ExtGetTexLevelParameterivQCOM does not reference to a valid texture target. INVALID_VALUE error will be generated if the parameter to cubemap texture target in ExtGetTexLevelParameterivQCOM is not one of the allowable values. INVALID_VALUE error will be generated if the texture parameter to ExtGetTexLevelParameterivQCOM is not one of the allowable values. INVALID_ENUM error will be generated if the parameter to ExtGetTexLevelParameterivQCOM is not one of the allowable values. INVALID_ENUM error will be generated if the parameter to ExtGetTexSubImageQCOM is not one of the allowable values. INVALID_ENUM error will be generated if the parameter to ExtGetTexSubImageQCOM does not reference to a valid texture object. INVALID_VALUE error will be generated if the selected region to ExtGetTexSubImageQCOM is not inside the texture. INVALID_VALUE error will be generated if the parameter to ExtGetTexSubImageQCOM does not reference to a valid texture level. INVALID_ENUM error will be generated if the or parameters to ExtGetTexSubImageQCOM are not one of the allowable values. INVALID_ENUM error will be generated if the parameter to ExtGetBufferPointervQCOM is not one of the allowable values. New State None. Revision History #01 05/14/2009 Jukka Liimatta First draft.