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

Side by Side Diff: cc/CCResourceProvider.h

Issue 10942040: Fix CC*Renderer and CC*LayerImpl to compile with Clang (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 3 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 2012 The Chromium Authors. All rights reserved. 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 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 5
6 #ifndef CCResourceProvider_h 6 #ifndef CCResourceProvider_h
7 #define CCResourceProvider_h 7 #define CCResourceProvider_h
8 8
9 #include "CCGraphicsContext.h" 9 #include "CCGraphicsContext.h"
10 #include "GraphicsContext3D.h" 10 #include "GraphicsContext3D.h"
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 GC3Dbyte name[64]; 50 GC3Dbyte name[64];
51 }; 51 };
52 struct TransferableResource { 52 struct TransferableResource {
53 unsigned id; 53 unsigned id;
54 GC3Denum format; 54 GC3Denum format;
55 IntSize size; 55 IntSize size;
56 Mailbox mailbox; 56 Mailbox mailbox;
57 }; 57 };
58 typedef Vector<TransferableResource> TransferableResourceArray; 58 typedef Vector<TransferableResource> TransferableResourceArray;
59 struct TransferableResourceList { 59 struct TransferableResourceList {
60 TransferableResourceList();
61 ~TransferableResourceList();
62
60 TransferableResourceArray resources; 63 TransferableResourceArray resources;
61 unsigned syncPoint; 64 unsigned syncPoint;
62 }; 65 };
63 66
64 static PassOwnPtr<CCResourceProvider> create(CCGraphicsContext*, TextureUplo aderOption); 67 static PassOwnPtr<CCResourceProvider> create(CCGraphicsContext*, TextureUplo aderOption);
65 68
66 virtual ~CCResourceProvider(); 69 virtual ~CCResourceProvider();
67 70
68 WebKit::WebGraphicsContext3D* graphicsContext3D(); 71 WebKit::WebGraphicsContext3D* graphicsContext3D();
69 TextureUploader* textureUploader() const { return m_textureUploader.get(); } 72 TextureUploader* textureUploader() const { return m_textureUploader.get(); }
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 204
202 private: 205 private:
203 CCResourceProvider* m_resourceProvider; 206 CCResourceProvider* m_resourceProvider;
204 CCResourceProvider::ResourceId m_resourceId; 207 CCResourceProvider::ResourceId m_resourceId;
205 SkBitmap m_skBitmap; 208 SkBitmap m_skBitmap;
206 SkCanvas m_skCanvas; 209 SkCanvas m_skCanvas;
207 }; 210 };
208 211
209 private: 212 private:
210 struct Resource { 213 struct Resource {
211 Resource() 214 Resource();
212 : glId(0) 215 Resource(unsigned textureId, int pool, const IntSize& size, GC3Denum for mat);
213 , pixels(0) 216 Resource(uint8_t* pixels, int pool, const IntSize& size, GC3Denum format );
214 , pool(0) 217
215 , lockForReadCount(0)
216 , lockedForWrite(false)
217 , external(false)
218 , exported(false)
219 , size()
220 , format(0)
221 , type(static_cast<ResourceType>(0))
222 { }
223 Resource(unsigned textureId, int pool, const IntSize& size, GC3Denum for mat)
224 : glId(textureId)
225 , pixels(0)
226 , pool(pool)
227 , lockForReadCount(0)
228 , lockedForWrite(false)
229 , external(false)
230 , exported(false)
231 , size(size)
232 , format(format)
233 , type(GLTexture)
234 { }
235 Resource(uint8_t* pixels, int pool, const IntSize& size, GC3Denum format )
236 : glId(0)
237 , pixels(pixels)
238 , pool(pool)
239 , lockForReadCount(0)
240 , lockedForWrite(false)
241 , external(false)
242 , exported(false)
243 , size(size)
244 , format(format)
245 , type(Bitmap)
246 { }
247 unsigned glId; 218 unsigned glId;
248 uint8_t* pixels; 219 uint8_t* pixels;
249 int pool; 220 int pool;
250 int lockForReadCount; 221 int lockForReadCount;
251 bool lockedForWrite; 222 bool lockedForWrite;
252 bool external; 223 bool external;
253 bool exported; 224 bool exported;
254 IntSize size; 225 IntSize size;
255 GC3Denum format; 226 GC3Denum format;
256 ResourceType type; 227 ResourceType type;
257 }; 228 };
258 typedef HashMap<ResourceId, Resource> ResourceMap; 229 typedef HashMap<ResourceId, Resource> ResourceMap;
259 struct Child { 230 struct Child {
231 Child();
232 ~Child();
233
260 int pool; 234 int pool;
261 ResourceIdMap childToParentMap; 235 ResourceIdMap childToParentMap;
262 ResourceIdMap parentToChildMap; 236 ResourceIdMap parentToChildMap;
263 }; 237 };
264 typedef HashMap<int, Child> ChildMap; 238 typedef HashMap<int, Child> ChildMap;
265 239
266 explicit CCResourceProvider(CCGraphicsContext*); 240 explicit CCResourceProvider(CCGraphicsContext*);
267 bool initialize(TextureUploaderOption); 241 bool initialize(TextureUploaderOption);
268 242
269 const Resource* lockForRead(ResourceId); 243 const Resource* lockForRead(ResourceId);
(...skipping 19 matching lines...) Expand all
289 bool m_useShallowFlush; 263 bool m_useShallowFlush;
290 OwnPtr<LayerTextureSubImage> m_texSubImage; 264 OwnPtr<LayerTextureSubImage> m_texSubImage;
291 OwnPtr<TextureUploader> m_textureUploader; 265 OwnPtr<TextureUploader> m_textureUploader;
292 OwnPtr<AcceleratedTextureCopier> m_textureCopier; 266 OwnPtr<AcceleratedTextureCopier> m_textureCopier;
293 int m_maxTextureSize; 267 int m_maxTextureSize;
294 }; 268 };
295 269
296 } 270 }
297 271
298 #endif 272 #endif
OLDNEW
« no previous file with comments | « cc/CCRendererGL.cpp ('k') | cc/CCResourceProvider.cpp » ('j') | cc/CCTiledLayerImpl.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698