OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" | 5 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" |
6 | 6 |
7 #include <stdio.h> | 7 #include <stdio.h> |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 #include <list> | 10 #include <list> |
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
215 private: | 215 private: |
216 GLES2DecoderImpl* decoder_; | 216 GLES2DecoderImpl* decoder_; |
217 DISALLOW_COPY_AND_ASSIGN(ScopedFrameBufferBinder); | 217 DISALLOW_COPY_AND_ASSIGN(ScopedFrameBufferBinder); |
218 }; | 218 }; |
219 | 219 |
220 // Temporarily changes a decoder's bound frame buffer to a resolved version of | 220 // Temporarily changes a decoder's bound frame buffer to a resolved version of |
221 // the multisampled offscreen render buffer if that buffer is multisampled, and, | 221 // the multisampled offscreen render buffer if that buffer is multisampled, and, |
222 // if it is bound or enforce_internal_framebuffer is true. | 222 // if it is bound or enforce_internal_framebuffer is true. |
223 class ScopedResolvedFrameBufferBinder { | 223 class ScopedResolvedFrameBufferBinder { |
224 public: | 224 public: |
225 explicit ScopedResolvedFrameBufferBinder(GLES2DecoderImpl* decoder, | 225 ScopedResolvedFrameBufferBinder(GLES2DecoderImpl* decoder, |
226 bool enforce_internal_framebuffer); | 226 bool enforce_internal_framebuffer); |
227 ~ScopedResolvedFrameBufferBinder(); | 227 ~ScopedResolvedFrameBufferBinder(); |
228 | 228 |
229 private: | 229 private: |
230 GLES2DecoderImpl* decoder_; | 230 GLES2DecoderImpl* decoder_; |
231 bool resolve_and_bind_; | 231 bool resolve_and_bind_; |
232 DISALLOW_COPY_AND_ASSIGN(ScopedResolvedFrameBufferBinder); | 232 DISALLOW_COPY_AND_ASSIGN(ScopedResolvedFrameBufferBinder); |
233 }; | 233 }; |
234 | 234 |
235 // Encapsulates an OpenGL texture. | 235 // Encapsulates an OpenGL texture. |
236 class Texture { | 236 class Texture { |
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
440 } | 440 } |
441 | 441 |
442 GLES2Decoder::~GLES2Decoder() { | 442 GLES2Decoder::~GLES2Decoder() { |
443 } | 443 } |
444 | 444 |
445 // This class implements GLES2Decoder so we don't have to expose all the GLES2 | 445 // This class implements GLES2Decoder so we don't have to expose all the GLES2 |
446 // cmd stuff to outside this class. | 446 // cmd stuff to outside this class. |
447 class GLES2DecoderImpl : public base::SupportsWeakPtr<GLES2DecoderImpl>, | 447 class GLES2DecoderImpl : public base::SupportsWeakPtr<GLES2DecoderImpl>, |
448 public GLES2Decoder { | 448 public GLES2Decoder { |
449 public: | 449 public: |
450 explicit GLES2DecoderImpl(SurfaceManager* surface_manager, | 450 GLES2DecoderImpl(SurfaceManager* surface_manager, ContextGroup* group); |
451 ContextGroup* group); | |
452 | 451 |
453 // Overridden from AsyncAPIInterface. | 452 // Overridden from AsyncAPIInterface. |
454 virtual Error DoCommand(unsigned int command, | 453 virtual Error DoCommand(unsigned int command, |
455 unsigned int arg_count, | 454 unsigned int arg_count, |
456 const void* args); | 455 const void* args); |
457 | 456 |
458 // Overridden from AsyncAPIInterface. | 457 // Overridden from AsyncAPIInterface. |
459 virtual const char* GetCommandName(unsigned int command_id) const; | 458 virtual const char* GetCommandName(unsigned int command_id) const; |
460 | 459 |
461 // Overridden from GLES2Decoder. | 460 // Overridden from GLES2Decoder. |
(...skipping 6288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6750 return false; | 6749 return false; |
6751 } | 6750 } |
6752 | 6751 |
6753 // Include the auto-generated part of this file. We split this because it means | 6752 // Include the auto-generated part of this file. We split this because it means |
6754 // we can easily edit the non-auto generated parts right here in this file | 6753 // we can easily edit the non-auto generated parts right here in this file |
6755 // instead of having to edit some template or the code generator. | 6754 // instead of having to edit some template or the code generator. |
6756 #include "gpu/command_buffer/service/gles2_cmd_decoder_autogen.h" | 6755 #include "gpu/command_buffer/service/gles2_cmd_decoder_autogen.h" |
6757 | 6756 |
6758 } // namespace gles2 | 6757 } // namespace gles2 |
6759 } // namespace gpu | 6758 } // namespace gpu |
OLD | NEW |