1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CC_TEXTURE_LAYER_CLIENT_H_
6 #define CC_TEXTURE_LAYER_CLIENT_H_
9 class WebGraphicsContext3D
;
13 class ResourceUpdateQueue
;
15 class TextureLayerClient
{
17 // Called to prepare this layer's texture for compositing. The client may queue a texture
18 // upload or copy on the ResourceUpdateQueue.
19 // Returns the texture ID to be used for compositing.
20 virtual unsigned prepareTexture(ResourceUpdateQueue
&) = 0;
22 // Returns the context that is providing the texture. Used for rate limiting and detecting lost context.
23 virtual WebKit::WebGraphicsContext3D
* context() = 0;
26 virtual ~TextureLayerClient() { }
31 #endif // CC_TEXTURE_LAYER_CLIENT_H_