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

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

Issue 12330129: Make WaitSyncPoint go through command buffers. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix test Created 7 years, 9 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 // This file contains the GLES2Decoder class. 5 // This file contains the GLES2Decoder class.
6 6
7 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_ 7 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_
8 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_ 8 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_
9 9
10 #include <vector> 10 #include <vector>
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 bool gpu_memory_manager; 46 bool gpu_memory_manager;
47 }; 47 };
48 48
49 // This class implements the AsyncAPIInterface interface, decoding GLES2 49 // This class implements the AsyncAPIInterface interface, decoding GLES2
50 // commands and calling GL. 50 // commands and calling GL.
51 class GPU_EXPORT GLES2Decoder : public base::SupportsWeakPtr<GLES2Decoder>, 51 class GPU_EXPORT GLES2Decoder : public base::SupportsWeakPtr<GLES2Decoder>,
52 public CommonDecoder { 52 public CommonDecoder {
53 public: 53 public:
54 typedef error::Error Error; 54 typedef error::Error Error;
55 typedef base::Callback<void(int32 id, const std::string& msg)> MsgCallback; 55 typedef base::Callback<void(int32 id, const std::string& msg)> MsgCallback;
56 typedef base::Callback<bool(uint32 id)> WaitSyncPointCallback;
56 57
57 // Creates a decoder. 58 // Creates a decoder.
58 static GLES2Decoder* Create(ContextGroup* group); 59 static GLES2Decoder* Create(ContextGroup* group);
59 60
60 virtual ~GLES2Decoder(); 61 virtual ~GLES2Decoder();
61 62
62 bool debug() const { 63 bool debug() const {
63 return debug_; 64 return debug_;
64 } 65 }
65 66
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 int width, 184 int width,
184 int height, 185 int height,
185 bool is_texture_immutable) = 0; 186 bool is_texture_immutable) = 0;
186 187
187 // Gets the GL error for this context. 188 // Gets the GL error for this context.
188 virtual uint32 GetGLError() = 0; 189 virtual uint32 GetGLError() = 0;
189 190
190 // A callback for messages from the decoder. 191 // A callback for messages from the decoder.
191 virtual void SetMsgCallback(const MsgCallback& callback) = 0; 192 virtual void SetMsgCallback(const MsgCallback& callback) = 0;
192 193
194 // Sets the callback for waiting on a sync point. The callback returns the
195 // scheduling status (i.e. true if the channel is still scheduled).
196 virtual void SetWaitSyncPointCallback(
197 const WaitSyncPointCallback& callback) = 0;
198
193 virtual uint32 GetTextureUploadCount() = 0; 199 virtual uint32 GetTextureUploadCount() = 0;
194 virtual base::TimeDelta GetTotalTextureUploadTime() = 0; 200 virtual base::TimeDelta GetTotalTextureUploadTime() = 0;
195 virtual base::TimeDelta GetTotalProcessingCommandsTime() = 0; 201 virtual base::TimeDelta GetTotalProcessingCommandsTime() = 0;
196 virtual void AddProcessingCommandsTime(base::TimeDelta) = 0; 202 virtual void AddProcessingCommandsTime(base::TimeDelta) = 0;
197 203
198 // Returns true if the context was just lost due to e.g. GL_ARB_robustness. 204 // Returns true if the context was just lost due to e.g. GL_ARB_robustness.
199 virtual bool WasContextLost() = 0; 205 virtual bool WasContextLost() = 0;
200 206
201 // Lose this context. 207 // Lose this context.
202 virtual void LoseContext(uint32 reset_status) = 0; 208 virtual void LoseContext(uint32 reset_status) = 0;
(...skipping 11 matching lines...) Expand all
214 bool log_commands_; 220 bool log_commands_;
215 bool log_synthesized_gl_errors_; 221 bool log_synthesized_gl_errors_;
216 static bool testing_force_is_angle_; 222 static bool testing_force_is_angle_;
217 223
218 DISALLOW_COPY_AND_ASSIGN(GLES2Decoder); 224 DISALLOW_COPY_AND_ASSIGN(GLES2Decoder);
219 }; 225 };
220 226
221 } // namespace gles2 227 } // namespace gles2
222 } // namespace gpu 228 } // namespace gpu
223 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_ 229 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_
OLDNEW
« no previous file with comments | « gpu/command_buffer/common/gles2_cmd_ids_autogen.h ('k') | gpu/command_buffer/service/gles2_cmd_decoder.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698