Index: gpu/GLES2/extensions/CHROMIUM/CHROMIUM_image.txt |
diff --git a/gpu/GLES2/extensions/CHROMIUM/CHROMIUM_image.txt b/gpu/GLES2/extensions/CHROMIUM/CHROMIUM_image.txt |
index 154f91e210d5ca763f1f53ba8af40ba2c6406d56..2974e43bd32b7d01d4384cb62c7011a90d07a660 100644 |
--- a/gpu/GLES2/extensions/CHROMIUM/CHROMIUM_image.txt |
+++ b/gpu/GLES2/extensions/CHROMIUM/CHROMIUM_image.txt |
@@ -8,7 +8,7 @@ Name Strings |
Version |
- Last Modifed Date: Apr 30, 2014 |
+ Last Modifed Date: Oct 7, 2014 |
Dependencies |
@@ -16,19 +16,8 @@ Dependencies |
Overview |
- This extension allows for more efficient uploading of texture data through |
- Chromium's OpenGL ES 2.0 implementation as well as enable hardware overlay |
- support by providing ability to create buffers capable of being scanned out |
- directly by the display controller. |
- |
- For security reasons Chromium accesses the GPU from a separate process. User |
- processes are not allowed to access the GPU directly. This multi-process |
- architechure has the advantage that GPU operations can be secured and |
- pipelined but it has the disadvantage that all data that is going to be |
- passed to GPU must first be made available to the separate GPU process. |
- |
- This extension helps the application directly allocate and access texture |
- memory. |
+ This extension defines a new resource type that is suitable for |
+ sharing 2D arrays of image data between client APIs. |
Issues |
@@ -36,73 +25,32 @@ Issues |
New Tokens |
- Accepted by the <pname> parameter of GetImageParameterivCHROMIUM: |
- |
- IMAGE_ROWBYTES_CHROMIUM 0x78F0 |
- |
- Accepted by the <usage> parameter of CreateImageCHROMIUM: |
- |
- IMAGE_MAP_CHROMIUM 0x78F1 |
- IMAGE_SCANOUT_CHROMIUM 0x78F2 |
+ None |
New Procedures and Functions |
- GLuint CreateImageCHROMIUM(GLsizei width, GLsizei height, |
- GLenum internalformat, GLenum usage) |
+ GLuint CreateImageCHROMIUM(ClientBuffer buffer, |
+ GLsizei width, |
+ GLsizei height, |
+ GLenum internalformat) |
- Allocate an image with width equal to <width> and height equal |
- to <height> stored in format <internalformat>. |
+ Create an image from <buffer> with width equal to <width> and |
+ height equal to <height> and format equal to <internalformat>. |
- Returns a unique identifier for the allocated image that could be used |
- in subsequent operations. |
+ Returns a unique identifier for the image that could be used in |
+ subsequent operations. |
INVALID_VALUE is generated if <width> or <height> is nonpositive. |
- INVALID_ENUM is generated if <usage> is not one of |
- IMAGE_MAP_CHROMIUM and IMAGE_SCANOUT_CHROMIUM. |
+ INVALID_ENUM is generated if <internalformat> is not one of |
+ RGB or RGBA. |
void DestroyImageCHROMIUM(GLuint image_id) |
- Frees the image previously allocated by a call to CreateImageCHROMIUM. |
- |
- INVALID_OPERATION is generated if <image_id> is not a valid image id. |
- |
- void* MapImageCHROMIUM(GLuint image_id) |
- |
- Returns a pointer to in the user memory for the application to modify |
- the image. It is illegal to call this function on an image not created |
- with IMAGE_MAP_CHROMIUM usage. |
- |
- INVALID_OPERATION is generated if <image_id> is not a valid image id. |
- |
- INVALID_OPERATION is generated if the image was already mapped by a previous |
- call to this method. |
- |
- void UnmapImageCHROMIUM(GLuint image_id) |
- |
- Removes the mapping created by a call to MapImageCHROMIUM. |
- |
- Note that after calling UnmapImageCHROMIUM the application should assume |
- that the memory returned by MapImageCHROMIUM is off limits and is no longer |
- accessible by the application. Accessing it after calling |
- UnmapImageCHROMIUM will produce undefined results. |
+ Frees the image previously created by a call to CreateImageCHROMIUM. |
INVALID_OPERATION is generated if <image_id> is not a valid image id. |
- INVALID_OPERATION is generated if the image was not already mapped by a |
- previous call to MapImageCHROMIUM. |
- |
- void GetImageParameterivCHROMIUM(GLuint image_id, GLenum pname, |
- GLint* params) |
- |
- Sets <params> to the integer value of the parameter specified by <pname> |
- for the image specified by <image_id>. <params> is expected to be |
- properly allocated before calling this method. |
- |
- INVALID_OPERATION is generated if <image_id> is not a valid image id. |
- |
- INVALID_ENUM is generated if <pname> is not IMAGE_ROWBYTES_CHROMIUM. |
- |
Errors |
None. |
@@ -115,3 +63,4 @@ Revision History |
5/9/2013 Documented the extension |
4/30/2014 Moved usage flag to creation function. |
+ 10/7/2014 Remove map/unmap API. |