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 381 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
405 const TextureBackgroundProgram* GetTextureBackgroundProgram( | 406 const TextureBackgroundProgram* GetTextureBackgroundProgram( |
406 TexCoordPrecision precision, | 407 TexCoordPrecision precision, |
407 SamplerType sampler); | 408 SamplerType sampler); |
408 const NonPremultipliedTextureBackgroundProgram* | 409 const NonPremultipliedTextureBackgroundProgram* |
409 GetNonPremultipliedTextureBackgroundProgram(TexCoordPrecision precision, | 410 GetNonPremultipliedTextureBackgroundProgram(TexCoordPrecision precision, |
410 SamplerType sampler); | 411 SamplerType sampler); |
411 | 412 |
412 const VideoYUVProgram* GetVideoYUVProgram(TexCoordPrecision precision, | 413 const VideoYUVProgram* GetVideoYUVProgram(TexCoordPrecision precision, |
413 SamplerType sampler, | 414 SamplerType sampler, |
414 bool use_alpha_texture, | 415 bool use_alpha_texture, |
415 bool use_nv12); | 416 bool use_nv12, |
| 417 bool use_color_lut); |
416 const VideoStreamTextureProgram* GetVideoStreamTextureProgram( | 418 const VideoStreamTextureProgram* GetVideoStreamTextureProgram( |
417 TexCoordPrecision precision); | 419 TexCoordPrecision precision); |
418 | 420 |
419 const DebugBorderProgram* GetDebugBorderProgram(); | 421 const DebugBorderProgram* GetDebugBorderProgram(); |
420 const SolidColorProgram* GetSolidColorProgram(); | 422 const SolidColorProgram* GetSolidColorProgram(); |
421 const SolidColorProgramAA* GetSolidColorProgramAA(); | 423 const SolidColorProgramAA* GetSolidColorProgramAA(); |
422 | 424 |
423 TileProgram | 425 TileProgram |
424 tile_program_[LAST_TEX_COORD_PRECISION + 1][LAST_SAMPLER_TYPE + 1]; | 426 tile_program_[LAST_TEX_COORD_PRECISION + 1][LAST_SAMPLER_TYPE + 1]; |
425 TileProgramOpaque | 427 TileProgramOpaque |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
471 [LAST_SAMPLER_TYPE + 1] | 473 [LAST_SAMPLER_TYPE + 1] |
472 [LAST_BLEND_MODE + 1] | 474 [LAST_BLEND_MODE + 1] |
473 [LAST_MASK_VALUE + 1]; | 475 [LAST_MASK_VALUE + 1]; |
474 RenderPassMaskColorMatrixProgramAA | 476 RenderPassMaskColorMatrixProgramAA |
475 render_pass_mask_color_matrix_program_aa_[LAST_TEX_COORD_PRECISION + 1] | 477 render_pass_mask_color_matrix_program_aa_[LAST_TEX_COORD_PRECISION + 1] |
476 [LAST_SAMPLER_TYPE + 1] | 478 [LAST_SAMPLER_TYPE + 1] |
477 [LAST_BLEND_MODE + 1] | 479 [LAST_BLEND_MODE + 1] |
478 [LAST_MASK_VALUE + 1]; | 480 [LAST_MASK_VALUE + 1]; |
479 | 481 |
480 VideoYUVProgram video_yuv_program_[LAST_TEX_COORD_PRECISION + 1] | 482 VideoYUVProgram video_yuv_program_[LAST_TEX_COORD_PRECISION + 1] |
481 [LAST_SAMPLER_TYPE + 1][2][2]; | 483 [LAST_SAMPLER_TYPE + 1][2][2][2]; |
482 VideoStreamTextureProgram | 484 VideoStreamTextureProgram |
483 video_stream_texture_program_[LAST_TEX_COORD_PRECISION + 1]; | 485 video_stream_texture_program_[LAST_TEX_COORD_PRECISION + 1]; |
484 | 486 |
485 DebugBorderProgram debug_border_program_; | 487 DebugBorderProgram debug_border_program_; |
486 SolidColorProgram solid_color_program_; | 488 SolidColorProgram solid_color_program_; |
487 SolidColorProgramAA solid_color_program_aa_; | 489 SolidColorProgramAA solid_color_program_aa_; |
488 | 490 |
489 gpu::gles2::GLES2Interface* gl_; | 491 gpu::gles2::GLES2Interface* gl_; |
490 gpu::ContextSupport* context_support_; | 492 gpu::ContextSupport* context_support_; |
491 | 493 |
(...skipping 23 matching lines...) Expand all Loading... |
515 | 517 |
516 class SyncQuery; | 518 class SyncQuery; |
517 std::deque<std::unique_ptr<SyncQuery>> pending_sync_queries_; | 519 std::deque<std::unique_ptr<SyncQuery>> pending_sync_queries_; |
518 std::deque<std::unique_ptr<SyncQuery>> available_sync_queries_; | 520 std::deque<std::unique_ptr<SyncQuery>> available_sync_queries_; |
519 std::unique_ptr<SyncQuery> current_sync_query_; | 521 std::unique_ptr<SyncQuery> current_sync_query_; |
520 bool use_sync_query_; | 522 bool use_sync_query_; |
521 bool use_blend_equation_advanced_; | 523 bool use_blend_equation_advanced_; |
522 bool use_blend_equation_advanced_coherent_; | 524 bool use_blend_equation_advanced_coherent_; |
523 | 525 |
524 BoundGeometry bound_geometry_; | 526 BoundGeometry bound_geometry_; |
| 527 ColorLUTCache color_lut_cache_; |
525 DISALLOW_COPY_AND_ASSIGN(GLRenderer); | 528 DISALLOW_COPY_AND_ASSIGN(GLRenderer); |
526 }; | 529 }; |
527 | 530 |
528 } // namespace cc | 531 } // namespace cc |
529 | 532 |
530 #endif // CC_OUTPUT_GL_RENDERER_H_ | 533 #endif // CC_OUTPUT_GL_RENDERER_H_ |
OLD | NEW |