| OLD | NEW |
| 1 // Copyright 2010 The Chromium Authors. All rights reserved. | 1 // Copyright 2010 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 CC_OUTPUT_GL_RENDERER_H_ | 5 #ifndef CC_OUTPUT_GL_RENDERER_H_ |
| 6 #define CC_OUTPUT_GL_RENDERER_H_ | 6 #define CC_OUTPUT_GL_RENDERER_H_ |
| 7 | 7 |
| 8 #include <deque> | 8 #include <deque> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| 11 #include "base/cancelable_callback.h" | 11 #include "base/cancelable_callback.h" |
| 12 #include "base/macros.h" | 12 #include "base/macros.h" |
| 13 #include "cc/base/cc_export.h" | 13 #include "cc/base/cc_export.h" |
| 14 #include "cc/output/color_lut_cache.h" |
| 14 #include "cc/output/direct_renderer.h" | 15 #include "cc/output/direct_renderer.h" |
| 15 #include "cc/output/gl_renderer_draw_cache.h" | 16 #include "cc/output/gl_renderer_draw_cache.h" |
| 16 #include "cc/output/program_binding.h" | 17 #include "cc/output/program_binding.h" |
| 17 #include "cc/output/renderer.h" | 18 #include "cc/output/renderer.h" |
| 18 #include "cc/quads/debug_border_draw_quad.h" | 19 #include "cc/quads/debug_border_draw_quad.h" |
| 19 #include "cc/quads/render_pass_draw_quad.h" | 20 #include "cc/quads/render_pass_draw_quad.h" |
| 20 #include "cc/quads/solid_color_draw_quad.h" | 21 #include "cc/quads/solid_color_draw_quad.h" |
| 21 #include "cc/quads/tile_draw_quad.h" | 22 #include "cc/quads/tile_draw_quad.h" |
| 22 #include "cc/quads/yuv_video_draw_quad.h" | 23 #include "cc/quads/yuv_video_draw_quad.h" |
| 23 #include "ui/gfx/geometry/quad_f.h" | 24 #include "ui/gfx/geometry/quad_f.h" |
| (...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 412 const TextureBackgroundProgram* GetTextureBackgroundProgram( | 413 const TextureBackgroundProgram* GetTextureBackgroundProgram( |
| 413 TexCoordPrecision precision, | 414 TexCoordPrecision precision, |
| 414 SamplerType sampler); | 415 SamplerType sampler); |
| 415 const NonPremultipliedTextureBackgroundProgram* | 416 const NonPremultipliedTextureBackgroundProgram* |
| 416 GetNonPremultipliedTextureBackgroundProgram(TexCoordPrecision precision, | 417 GetNonPremultipliedTextureBackgroundProgram(TexCoordPrecision precision, |
| 417 SamplerType sampler); | 418 SamplerType sampler); |
| 418 | 419 |
| 419 const VideoYUVProgram* GetVideoYUVProgram(TexCoordPrecision precision, | 420 const VideoYUVProgram* GetVideoYUVProgram(TexCoordPrecision precision, |
| 420 SamplerType sampler, | 421 SamplerType sampler, |
| 421 bool use_alpha_texture, | 422 bool use_alpha_texture, |
| 422 bool use_nv12); | 423 bool use_nv12, |
| 424 bool use_color_lut); |
| 423 const VideoStreamTextureProgram* GetVideoStreamTextureProgram( | 425 const VideoStreamTextureProgram* GetVideoStreamTextureProgram( |
| 424 TexCoordPrecision precision); | 426 TexCoordPrecision precision); |
| 425 | 427 |
| 426 const DebugBorderProgram* GetDebugBorderProgram(); | 428 const DebugBorderProgram* GetDebugBorderProgram(); |
| 427 const SolidColorProgram* GetSolidColorProgram(); | 429 const SolidColorProgram* GetSolidColorProgram(); |
| 428 const SolidColorProgramAA* GetSolidColorProgramAA(); | 430 const SolidColorProgramAA* GetSolidColorProgramAA(); |
| 429 | 431 |
| 430 TileProgram | 432 TileProgram |
| 431 tile_program_[LAST_TEX_COORD_PRECISION + 1][LAST_SAMPLER_TYPE + 1]; | 433 tile_program_[LAST_TEX_COORD_PRECISION + 1][LAST_SAMPLER_TYPE + 1]; |
| 432 TileProgramOpaque | 434 TileProgramOpaque |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 478 [LAST_SAMPLER_TYPE + 1] | 480 [LAST_SAMPLER_TYPE + 1] |
| 479 [LAST_BLEND_MODE + 1] | 481 [LAST_BLEND_MODE + 1] |
| 480 [LAST_MASK_VALUE + 1]; | 482 [LAST_MASK_VALUE + 1]; |
| 481 RenderPassMaskColorMatrixProgramAA | 483 RenderPassMaskColorMatrixProgramAA |
| 482 render_pass_mask_color_matrix_program_aa_[LAST_TEX_COORD_PRECISION + 1] | 484 render_pass_mask_color_matrix_program_aa_[LAST_TEX_COORD_PRECISION + 1] |
| 483 [LAST_SAMPLER_TYPE + 1] | 485 [LAST_SAMPLER_TYPE + 1] |
| 484 [LAST_BLEND_MODE + 1] | 486 [LAST_BLEND_MODE + 1] |
| 485 [LAST_MASK_VALUE + 1]; | 487 [LAST_MASK_VALUE + 1]; |
| 486 | 488 |
| 487 VideoYUVProgram video_yuv_program_[LAST_TEX_COORD_PRECISION + 1] | 489 VideoYUVProgram video_yuv_program_[LAST_TEX_COORD_PRECISION + 1] |
| 488 [LAST_SAMPLER_TYPE + 1][2][2]; | 490 [LAST_SAMPLER_TYPE + 1][2][2][2]; |
| 489 VideoStreamTextureProgram | 491 VideoStreamTextureProgram |
| 490 video_stream_texture_program_[LAST_TEX_COORD_PRECISION + 1]; | 492 video_stream_texture_program_[LAST_TEX_COORD_PRECISION + 1]; |
| 491 | 493 |
| 492 DebugBorderProgram debug_border_program_; | 494 DebugBorderProgram debug_border_program_; |
| 493 SolidColorProgram solid_color_program_; | 495 SolidColorProgram solid_color_program_; |
| 494 SolidColorProgramAA solid_color_program_aa_; | 496 SolidColorProgramAA solid_color_program_aa_; |
| 495 | 497 |
| 496 gpu::gles2::GLES2Interface* gl_; | 498 gpu::gles2::GLES2Interface* gl_; |
| 497 gpu::ContextSupport* context_support_; | 499 gpu::ContextSupport* context_support_; |
| 498 | 500 |
| (...skipping 29 matching lines...) Expand all Loading... |
| 528 bool use_blend_equation_advanced_; | 530 bool use_blend_equation_advanced_; |
| 529 bool use_blend_equation_advanced_coherent_; | 531 bool use_blend_equation_advanced_coherent_; |
| 530 | 532 |
| 531 // Some overlays require that content is copied from a render pass into an | 533 // Some overlays require that content is copied from a render pass into an |
| 532 // overlay resource. This means the GLRenderer needs its own ResourcePool. | 534 // overlay resource. This means the GLRenderer needs its own ResourcePool. |
| 533 std::unique_ptr<ResourcePool> overlay_resource_pool_; | 535 std::unique_ptr<ResourcePool> overlay_resource_pool_; |
| 534 | 536 |
| 535 // If true, draw a green border after compositing a texture quad using GL. | 537 // If true, draw a green border after compositing a texture quad using GL. |
| 536 bool gl_composited_texture_quad_border_; | 538 bool gl_composited_texture_quad_border_; |
| 537 BoundGeometry bound_geometry_; | 539 BoundGeometry bound_geometry_; |
| 540 ColorLUTCache color_lut_cache_; |
| 538 DISALLOW_COPY_AND_ASSIGN(GLRenderer); | 541 DISALLOW_COPY_AND_ASSIGN(GLRenderer); |
| 539 }; | 542 }; |
| 540 | 543 |
| 541 } // namespace cc | 544 } // namespace cc |
| 542 | 545 |
| 543 #endif // CC_OUTPUT_GL_RENDERER_H_ | 546 #endif // CC_OUTPUT_GL_RENDERER_H_ |
| OLD | NEW |