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

Side by Side Diff: gpu/command_buffer/service/gles2_cmd_copy_texture_chromium.h

Issue 10535174: Addition of unpremultiply setting to GL_CHROMIUM_copy_texture. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 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 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_COPY_TEXTURE_CHROMIUM_H_ 5 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_COPY_TEXTURE_CHROMIUM_H_
6 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_COPY_TEXTURE_CHROMIUM_H_ 6 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_COPY_TEXTURE_CHROMIUM_H_
7 7
8 #include "gpu/command_buffer/service/gl_utils.h" 8 #include "gpu/command_buffer/service/gl_utils.h"
9 9
10 // This class encapsulates the resources required to implement the 10 // This class encapsulates the resources required to implement the
11 // GL_CHROMIUM_copy_texture extension. The copy operation is performed 11 // GL_CHROMIUM_copy_texture extension. The copy operation is performed
12 // via a blit to a framebuffer object. 12 // via a blit to a framebuffer object.
13 class CopyTextureCHROMIUMResourceManager { 13 class CopyTextureCHROMIUMResourceManager {
14 public: 14 public:
15 CopyTextureCHROMIUMResourceManager() : initialized_(false) {} 15 CopyTextureCHROMIUMResourceManager() : initialized_(false) {}
16 16
17 void Initialize(); 17 void Initialize();
18 void Destroy(); 18 void Destroy();
19 19
20 void DoCopyTexture(GLenum target, GLuint source_id, GLuint dest_id, 20 void DoCopyTexture(GLenum target, GLuint source_id, GLuint dest_id,
21 GLint level, bool flip_y, bool premultiply_alpha); 21 GLint level, bool flip_y, bool premultiply_alpha,
22 bool unpremultiply_alpha);
22 23
23 // The attributes used during invocation of the extension. 24 // The attributes used during invocation of the extension.
24 static const GLuint kVertexPositionAttrib = 0; 25 static const GLuint kVertexPositionAttrib = 0;
25 static const GLuint kVertexTextureAttrib = 1; 26 static const GLuint kVertexTextureAttrib = 1;
26 27
27 private: 28 private:
28 bool initialized_; 29 bool initialized_;
29 30
30 static const int kNumPrograms = 4; 31 static const int kNumPrograms = 6;
31 GLuint programs_[kNumPrograms]; 32 GLuint programs_[kNumPrograms];
32 GLuint buffer_ids_[2]; 33 GLuint buffer_ids_[2];
33 GLuint framebuffer_; 34 GLuint framebuffer_;
34 GLuint sampler_locations_[kNumPrograms]; 35 GLuint sampler_locations_[kNumPrograms];
35 36
36 DISALLOW_COPY_AND_ASSIGN(CopyTextureCHROMIUMResourceManager); 37 DISALLOW_COPY_AND_ASSIGN(CopyTextureCHROMIUMResourceManager);
37 }; 38 };
38 39
39 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_COPY_TEXTURE_CHROMIUM_H_ 40 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_COPY_TEXTURE_CHROMIUM_H_
40 41
41 42
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698