| OLD | NEW |
| 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_CLIENT_GLES2_IMPLEMENTATION_H_ | 5 #ifndef GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_H_ |
| 6 #define GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_H_ | 6 #define GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_H_ |
| 7 | 7 |
| 8 #include <GLES2/gl2.h> | 8 #include <GLES2/gl2.h> |
| 9 | 9 |
| 10 #include <list> | 10 #include <list> |
| (...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 215 virtual void DisableVertexAttribArray(GLuint index) OVERRIDE; | 215 virtual void DisableVertexAttribArray(GLuint index) OVERRIDE; |
| 216 virtual void EnableVertexAttribArray(GLuint index) OVERRIDE; | 216 virtual void EnableVertexAttribArray(GLuint index) OVERRIDE; |
| 217 virtual void GetVertexAttribfv( | 217 virtual void GetVertexAttribfv( |
| 218 GLuint index, GLenum pname, GLfloat* params) OVERRIDE; | 218 GLuint index, GLenum pname, GLfloat* params) OVERRIDE; |
| 219 virtual void GetVertexAttribiv( | 219 virtual void GetVertexAttribiv( |
| 220 GLuint index, GLenum pname, GLint* params) OVERRIDE; | 220 GLuint index, GLenum pname, GLint* params) OVERRIDE; |
| 221 | 221 |
| 222 // ContextSupport implementation. | 222 // ContextSupport implementation. |
| 223 virtual void Swap() OVERRIDE; | 223 virtual void Swap() OVERRIDE; |
| 224 virtual void PartialSwapBuffers(const gfx::Rect& sub_buffer) OVERRIDE; | 224 virtual void PartialSwapBuffers(const gfx::Rect& sub_buffer) OVERRIDE; |
| 225 virtual void SetSwapBuffersCompleteCallback( | |
| 226 const base::Closure& swap_buffers_complete_callback) | |
| 227 OVERRIDE; | |
| 228 virtual void ScheduleOverlayPlane(int plane_z_order, | 225 virtual void ScheduleOverlayPlane(int plane_z_order, |
| 229 gfx::OverlayTransform plane_transform, | 226 gfx::OverlayTransform plane_transform, |
| 230 unsigned overlay_texture_id, | 227 unsigned overlay_texture_id, |
| 231 const gfx::Rect& display_bounds, | 228 const gfx::Rect& display_bounds, |
| 232 const gfx::RectF& uv_rect) OVERRIDE; | 229 const gfx::RectF& uv_rect) OVERRIDE; |
| 233 virtual GLuint InsertFutureSyncPointCHROMIUM() OVERRIDE; | 230 virtual GLuint InsertFutureSyncPointCHROMIUM() OVERRIDE; |
| 234 virtual void RetireSyncPointCHROMIUM(GLuint sync_point) OVERRIDE; | 231 virtual void RetireSyncPointCHROMIUM(GLuint sync_point) OVERRIDE; |
| 235 | 232 |
| 236 void GetProgramInfoCHROMIUMHelper(GLuint program, std::vector<int8>* result); | 233 void GetProgramInfoCHROMIUMHelper(GLuint program, std::vector<int8>* result); |
| 237 GLint GetAttribLocationHelper(GLuint program, const char* name); | 234 GLint GetAttribLocationHelper(GLuint program, const char* name); |
| (...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 597 IdHandlerInterface* GetIdHandler(int id_namespace) const; | 594 IdHandlerInterface* GetIdHandler(int id_namespace) const; |
| 598 // IdAllocators for objects that can't be shared among contexts. | 595 // IdAllocators for objects that can't be shared among contexts. |
| 599 // For now, used only for Queries. TODO(hj.r.chung) Should be added for | 596 // For now, used only for Queries. TODO(hj.r.chung) Should be added for |
| 600 // Framebuffer and Vertex array objects. | 597 // Framebuffer and Vertex array objects. |
| 601 IdAllocatorInterface* GetIdAllocator(int id_namespace) const; | 598 IdAllocatorInterface* GetIdAllocator(int id_namespace) const; |
| 602 | 599 |
| 603 void FinishHelper(); | 600 void FinishHelper(); |
| 604 | 601 |
| 605 void RunIfContextNotLost(const base::Closure& callback); | 602 void RunIfContextNotLost(const base::Closure& callback); |
| 606 | 603 |
| 607 void OnSwapBuffersComplete(); | |
| 608 | |
| 609 // Validate if an offset is valid, i.e., non-negative and fit into 32-bit. | 604 // Validate if an offset is valid, i.e., non-negative and fit into 32-bit. |
| 610 // If not, generate an approriate error, and return false. | 605 // If not, generate an approriate error, and return false. |
| 611 bool ValidateOffset(const char* func, GLintptr offset); | 606 bool ValidateOffset(const char* func, GLintptr offset); |
| 612 | 607 |
| 613 // Validate if a size is valid, i.e., non-negative and fit into 32-bit. | 608 // Validate if a size is valid, i.e., non-negative and fit into 32-bit. |
| 614 // If not, generate an approriate error, and return false. | 609 // If not, generate an approriate error, and return false. |
| 615 bool ValidateSize(const char* func, GLsizeiptr offset); | 610 bool ValidateSize(const char* func, GLsizeiptr offset); |
| 616 | 611 |
| 617 // Remove the transfer buffer from the buffer tracker. For buffers used | 612 // Remove the transfer buffer from the buffer tracker. For buffers used |
| 618 // asynchronously the memory is free:ed if the upload has completed. For | 613 // asynchronously the memory is free:ed if the upload has completed. For |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 778 scoped_ptr<GpuMemoryBufferTracker> gpu_memory_buffer_tracker_; | 773 scoped_ptr<GpuMemoryBufferTracker> gpu_memory_buffer_tracker_; |
| 779 | 774 |
| 780 GLES2ImplementationErrorMessageCallback* error_message_callback_; | 775 GLES2ImplementationErrorMessageCallback* error_message_callback_; |
| 781 | 776 |
| 782 scoped_ptr<std::string> current_trace_name_; | 777 scoped_ptr<std::string> current_trace_name_; |
| 783 | 778 |
| 784 GpuControl* gpu_control_; | 779 GpuControl* gpu_control_; |
| 785 | 780 |
| 786 Capabilities capabilities_; | 781 Capabilities capabilities_; |
| 787 | 782 |
| 788 base::Closure swap_buffers_complete_callback_; | |
| 789 | |
| 790 base::WeakPtrFactory<GLES2Implementation> weak_ptr_factory_; | 783 base::WeakPtrFactory<GLES2Implementation> weak_ptr_factory_; |
| 791 | 784 |
| 792 DISALLOW_COPY_AND_ASSIGN(GLES2Implementation); | 785 DISALLOW_COPY_AND_ASSIGN(GLES2Implementation); |
| 793 }; | 786 }; |
| 794 | 787 |
| 795 inline bool GLES2Implementation::GetBufferParameterivHelper( | 788 inline bool GLES2Implementation::GetBufferParameterivHelper( |
| 796 GLenum /* target */, GLenum /* pname */, GLint* /* params */) { | 789 GLenum /* target */, GLenum /* pname */, GLint* /* params */) { |
| 797 return false; | 790 return false; |
| 798 } | 791 } |
| 799 | 792 |
| (...skipping 22 matching lines...) Expand all Loading... |
| 822 | 815 |
| 823 inline bool GLES2Implementation::GetTexParameterivHelper( | 816 inline bool GLES2Implementation::GetTexParameterivHelper( |
| 824 GLenum /* target */, GLenum /* pname */, GLint* /* params */) { | 817 GLenum /* target */, GLenum /* pname */, GLint* /* params */) { |
| 825 return false; | 818 return false; |
| 826 } | 819 } |
| 827 | 820 |
| 828 } // namespace gles2 | 821 } // namespace gles2 |
| 829 } // namespace gpu | 822 } // namespace gpu |
| 830 | 823 |
| 831 #endif // GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_H_ | 824 #endif // GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_H_ |
| OLD | NEW |