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

Unified Diff: gpu/command_buffer/client/gles2_implementation.h

Issue 7762009: Manually merging trunk revs 95836 and 96904 to 835 branch (second attempt) (Closed) Base URL: svn://svn.chromium.org/chrome/branches/835/src/
Patch Set: Created 9 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « gpu/command_buffer/client/gles2_demo.cc ('k') | gpu/command_buffer/client/gles2_implementation.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gpu/command_buffer/client/gles2_implementation.h
===================================================================
--- gpu/command_buffer/client/gles2_implementation.h (revision 98483)
+++ gpu/command_buffer/client/gles2_implementation.h (working copy)
@@ -75,6 +75,7 @@
namespace gles2 {
class ClientSideBufferHelper;
+class ProgramInfoManager;
// Base class for IdHandlers
class IdHandlerInterface {
@@ -86,7 +87,7 @@
virtual void MakeIds(GLuint id_offset, GLsizei n, GLuint* ids) = 0;
// Frees some ids.
- virtual void FreeIds(GLsizei n, const GLuint* ids) = 0;
+ virtual bool FreeIds(GLsizei n, const GLuint* ids) = 0;
// Marks an id as used for glBind functions. id = 0 does nothing.
virtual bool MarkAsUsedForBind(GLuint id) = 0;
@@ -155,7 +156,8 @@
size_t transfer_buffer_size,
void* transfer_buffer,
int32 transfer_buffer_id,
- bool share_resources);
+ bool share_resources,
+ bool bind_generates_resource = true); // Will remove in 2 CLs!
~GLES2Implementation();
@@ -175,6 +177,16 @@
void GetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params);
void GetVertexAttribiv(GLuint index, GLenum pname, GLint* params);
+ void GetProgramInfoCHROMIUMHelper(GLuint program, std::vector<int8>* result);
+ GLint GetAttribLocationHelper(GLuint program, const char* name);
+ GLint GetUniformLocationHelper(GLuint program, const char* name);
+ bool GetActiveAttribHelper(
+ GLuint program, GLuint index, GLsizei bufsize, GLsizei* length,
+ GLint* size, GLenum* type, char* name);
+ bool GetActiveUniformHelper(
+ GLuint program, GLuint index, GLsizei bufsize, GLsizei* length,
+ GLint* size, GLenum* type, char* name);
+
GLuint MakeTextureId() {
GLuint id;
texture_id_handler_->MakeIds(0, 1, &id);
@@ -371,6 +383,8 @@
void DeleteFramebuffersHelper(GLsizei n, const GLuint* framebuffers);
void DeleteRenderbuffersHelper(GLsizei n, const GLuint* renderbuffers);
void DeleteTexturesHelper(GLsizei n, const GLuint* textures);
+ bool DeleteProgramHelper(GLuint program);
+ bool DeleteShaderHelper(GLuint shader);
// Helper for GetVertexAttrib
bool GetVertexAttribHelper(GLuint index, GLenum pname, uint32* param);
@@ -462,6 +476,8 @@
// Whether or not this context is sharing resources.
bool sharing_resources_;
+ bool bind_generates_resource_;
+
// Map of GLenum to Strings for glGetString. We need to cache these because
// the pointer passed back to the client has to remain valid for eternity.
typedef std::map<uint32, std::set<std::string> > GLStringMap;
@@ -479,6 +495,8 @@
scoped_ptr<MappedMemoryManager> mapped_memory_;
+ scoped_ptr<ProgramInfoManager> program_info_manager_;
+
DISALLOW_COPY_AND_ASSIGN(GLES2Implementation);
};
@@ -495,11 +513,6 @@
return false;
}
-inline bool GLES2Implementation::GetProgramivHelper(
- GLuint /* program */, GLenum /* pname */, GLint* /* params */) {
- return false;
-}
-
inline bool GLES2Implementation::GetRenderbufferParameterivHelper(
GLenum /* target */, GLenum /* pname */, GLint* /* params */) {
return false;
« no previous file with comments | « gpu/command_buffer/client/gles2_demo.cc ('k') | gpu/command_buffer/client/gles2_implementation.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698