Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(153)

Side by Side Diff: gpu/GLES2/extensions/CHROMIUM/CHROMIUM_texture_mailbox.txt

Issue 299043003: Adding bindless variants mailbox produce/consume (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed feedback Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 Name 1 Name
2 2
3 CHROMIUM_texture_mailbox 3 CHROMIUM_texture_mailbox
4 4
5 Name Strings 5 Name Strings
6 6
7 GL_CHROMIUM_texture_mailbox 7 GL_CHROMIUM_texture_mailbox
8 8
9 Version 9 Version
10 10
11 Last Modifed Date: April 25, 2012 11 Last Modifed Date: June 2, 2014
12 12
13 Dependencies 13 Dependencies
14 14
15 OpenGL ES 2.0 is required. 15 OpenGL ES 2.0 is required.
16 16
17 Overview 17 Overview
18 18
19 This extension defines a way of sharing texture image data between texture 19 This extension defines a way of sharing texture image data between texture
20 objects in different contexts where the contexts would not normally share 20 objects in different contexts where the contexts would not normally share
21 texture resources. Three new functions are exported. glGenMailboxCHROMIUM 21 texture resources. Five new functions are exported. glGenMailboxCHROMIUM
22 generates a name that can be used to identify texture image data outside 22 generates a name that can be used to identify texture image data outside
23 the scope of a context group. glProduceMailboxCHROMIUM associates a texture 23 the scope of a context group. glProduceMailboxCHROMIUM and
24 object with a global mailbox name. glConsumeMailboxCHROMIUM associates the 24 glProduceTextureDirectCHROMIUM associate a texture object with a global
25 texture object referenced by a mailbox name to a texture name. 25 mailbox name. glConsumeMailboxCHROMIUM and glCreateAndConsumeTextureCHROMIUM
26 associate the texture object referenced by a mailbox name to a texture name.
26 27
27 New Procedures and Functions 28 New Procedures and Functions
28 29
29 void glGenMailboxCHROMIUM (GLbyte *mailbox) 30 void glGenMailboxCHROMIUM (GLbyte *mailbox)
30 31
31 Generates a unique name identifying a mailbox. The name is generated using 32 Generates a unique name identifying a mailbox. The name is generated using
32 a cryptographic random number generator and is intended to be difficult to 33 a cryptographic random number generator and is intended to be difficult to
33 guess. The scope of the name is implementation specific, for example it 34 guess. The scope of the name is implementation specific, for example it
34 might not span multiple displays. 35 might not span multiple displays.
35 36
(...skipping 19 matching lines...) Expand all
55 <target> uses the same parameters as TexImage2D. 56 <target> uses the same parameters as TexImage2D.
56 57
57 <mailbox> identifies a GL_MAILBOX_SIZE_CHROMIUM byte sized name returned by 58 <mailbox> identifies a GL_MAILBOX_SIZE_CHROMIUM byte sized name returned by
58 glGenMailboxCHROMIUM. 59 glGenMailboxCHROMIUM.
59 60
60 INVALID_OPERATION is generated if <target> is not a valid target. 61 INVALID_OPERATION is generated if <target> is not a valid target.
61 62
62 INVALID_OPERATION is generated if <mailbox> is invalid. 63 INVALID_OPERATION is generated if <mailbox> is invalid.
63 64
64 65
66 void glProduceTextureDirectCHROMIUM (GLuint texture, GLenum target,
67 const GLbyte *mailbox)
68
69 Associates the specified texture object with the mailbox name. Performs
70 identically to glProduceTextureCHROMIUM except that the texture specified by
71 <texture> is used instead of the currently bound texture. This operation
72 does not change the texture bindings or alter the bound texture in any way.
73
74 <texture> Specifies the name of a texture.
75
76
65 void glConsumeTextureCHROMIUM (GLenum target, const GLbyte *mailbox) 77 void glConsumeTextureCHROMIUM (GLenum target, const GLbyte *mailbox)
66 78
67 <target> uses the same parameters as TexImage2D. 79 <target> uses the same parameters as TexImage2D.
68 80
69 <mailbox> identifies a GL_MAILBOX_SIZE_CHROMIUM byte sized name returned by 81 <mailbox> identifies a GL_MAILBOX_SIZE_CHROMIUM byte sized name returned by
70 glGenMailboxCHROMIUM. 82 glGenMailboxCHROMIUM.
71 83
72 Deletes the currently bound texture object, and redefines its texture name 84 Deletes the currently bound texture object, and redefines its texture name
73 to point to the texture object associated with the mailbox name. All the 85 to point to the texture object associated with the mailbox name. All the
74 contexts that have consumed the texture object, as well as produced it share 86 contexts that have consumed the texture object, as well as produced it share
(...skipping 13 matching lines...) Expand all
88 100
89 INVALID_OPERATION is generated if <mailbox> is not associated with a texture 101 INVALID_OPERATION is generated if <mailbox> is not associated with a texture
90 object. 102 object.
91 103
92 INVALID_OPERATION is generated if the texture object associated with 104 INVALID_OPERATION is generated if the texture object associated with
93 <mailbox> has a different target than <target>. 105 <mailbox> has a different target than <target>.
94 106
95 INVALID_OPERATION is generated if the currently bound texture was previously 107 INVALID_OPERATION is generated if the currently bound texture was previously
96 deleted (for example in another context), hence doesn't have a name. 108 deleted (for example in another context), hence doesn't have a name.
97 109
110
111 GLuint glCreateAndConsumeTextureCHROMIUM (GLenum target,
112 const GLbyte *mailbox)
113
114 Returns a new texture name pointing to the texture object associated with
Ken Russell (switch to Gerrit) 2014/06/02 22:46:54 Consider expanding a little: "...new texture name
bajones 2014/06/02 23:31:23 Done. Update coming in soon.
115 the mailbox name. Does not alter the texture bindings or alter the currently
116 bound texture in any way. Otherwise performs identically to
117 glConsumeTextureCHROMIUM.
118
98 New Tokens 119 New Tokens
99 120
100 The size of a mailbox name in bytes. 121 The size of a mailbox name in bytes.
101 122
102 GL_MAILBOX_SIZE_CHROMIUM 64 123 GL_MAILBOX_SIZE_CHROMIUM 64
103 124
104 Errors 125 Errors
105 126
106 None. 127 None.
107 128
108 New Tokens 129 New Tokens
109 130
110 None. 131 None.
111 132
112 New State 133 New State
113 134
114 None. 135 None.
115 136
116 Revision History 137 Revision History
117 138
118 4/25/2011 Documented the extension 139 4/25/2011 Documented the extension
119 5/23/2013 Major revision in Produce/Consume semantics, introducing 140 5/23/2013 Major revision in Produce/Consume semantics, introducing
120 sharing. 141 sharing.
142 6/02/2014 Added glProduceTextureDirectCHROMIUM and
143 glCreateAndConsumeTextureCHROMIUM definitions.
OLDNEW
« no previous file with comments | « no previous file | gpu/GLES2/gl2chromium_autogen.h » ('j') | gpu/command_buffer/client/gles2_implementation.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698