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

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

Issue 1154053002: gpu: Use a rectangle to keep track of the cleared area of each texture level. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: restore scissor state in GLES2DecoderImpl::ClearLevel and update GLES2DecoderManualInitTest.DrawCle… Created 5 years, 6 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
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 196 matching lines...) Expand 10 before | Expand all | Expand 10 after
207 AsyncPixelTransferManager* manager) = 0; 207 AsyncPixelTransferManager* manager) = 0;
208 208
209 // Get the service texture ID corresponding to a client texture ID. 209 // Get the service texture ID corresponding to a client texture ID.
210 // If no such record is found then return false. 210 // If no such record is found then return false.
211 virtual bool GetServiceTextureId(uint32 client_texture_id, 211 virtual bool GetServiceTextureId(uint32 client_texture_id,
212 uint32* service_texture_id); 212 uint32* service_texture_id);
213 213
214 // Provides detail about a lost context if one occurred. 214 // Provides detail about a lost context if one occurred.
215 virtual error::ContextLostReason GetContextLostReason() = 0; 215 virtual error::ContextLostReason GetContextLostReason() = 0;
216 216
217 // Clears a level of a texture 217 // Clears a level sub area of a texture
218 // Returns false if a GL error should be generated. 218 // Returns false if a GL error should be generated.
219 virtual bool ClearLevel( 219 virtual bool ClearLevel(Texture* texture,
220 Texture* texture, 220 unsigned target,
221 unsigned target, 221 int level,
222 int level, 222 unsigned format,
223 unsigned internal_format, 223 unsigned type,
224 unsigned format, 224 int xoffset,
225 unsigned type, 225 int yoffset,
226 int width, 226 int width,
227 int height, 227 int height) = 0;
228 bool is_texture_immutable) = 0;
229 228
230 virtual ErrorState* GetErrorState() = 0; 229 virtual ErrorState* GetErrorState() = 0;
231 230
232 // A callback for messages from the decoder. 231 // A callback for messages from the decoder.
233 virtual void SetShaderCacheCallback(const ShaderCacheCallback& callback) = 0; 232 virtual void SetShaderCacheCallback(const ShaderCacheCallback& callback) = 0;
234 233
235 // Sets the callback for waiting on a sync point. The callback returns the 234 // Sets the callback for waiting on a sync point. The callback returns the
236 // scheduling status (i.e. true if the channel is still scheduled). 235 // scheduling status (i.e. true if the channel is still scheduled).
237 virtual void SetWaitSyncPointCallback( 236 virtual void SetWaitSyncPointCallback(
238 const WaitSyncPointCallback& callback) = 0; 237 const WaitSyncPointCallback& callback) = 0;
(...skipping 30 matching lines...) Expand all
269 bool log_commands_; 268 bool log_commands_;
270 bool unsafe_es3_apis_enabled_; 269 bool unsafe_es3_apis_enabled_;
271 270
272 DISALLOW_COPY_AND_ASSIGN(GLES2Decoder); 271 DISALLOW_COPY_AND_ASSIGN(GLES2Decoder);
273 }; 272 };
274 273
275 } // namespace gles2 274 } // namespace gles2
276 } // namespace gpu 275 } // namespace gpu
277 276
278 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_ 277 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698