OLD | NEW |
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 #ifndef CC_RESOURCES_RESOURCE_PROVIDER_H_ | 5 #ifndef CC_RESOURCES_RESOURCE_PROVIDER_H_ |
6 #define CC_RESOURCES_RESOURCE_PROVIDER_H_ | 6 #define CC_RESOURCES_RESOURCE_PROVIDER_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 #include <set> | 9 #include <set> |
10 #include <string> | 10 #include <string> |
(...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
325 gfx::Size size_; | 325 gfx::Size size_; |
326 ResourceFormat format_; | 326 ResourceFormat format_; |
327 base::ThreadChecker thread_checker_; | 327 base::ThreadChecker thread_checker_; |
328 | 328 |
329 DISALLOW_COPY_AND_ASSIGN(ScopedWriteLockGpuMemoryBuffer); | 329 DISALLOW_COPY_AND_ASSIGN(ScopedWriteLockGpuMemoryBuffer); |
330 }; | 330 }; |
331 | 331 |
332 class CC_EXPORT ScopedWriteLockGr { | 332 class CC_EXPORT ScopedWriteLockGr { |
333 public: | 333 public: |
334 ScopedWriteLockGr(ResourceProvider* resource_provider, | 334 ScopedWriteLockGr(ResourceProvider* resource_provider, |
335 ResourceProvider::ResourceId resource_id); | 335 ResourceProvider::ResourceId resource_id, |
| 336 bool use_distance_field_text, |
| 337 bool can_use_lcd_text); |
336 ~ScopedWriteLockGr(); | 338 ~ScopedWriteLockGr(); |
337 | 339 |
338 SkSurface* GetSkSurface(bool use_distance_field_text, | 340 SkSurface* get_sk_surface() { return sk_surface_.get(); } |
339 bool can_use_lcd_text); | |
340 | 341 |
341 private: | 342 private: |
342 bool SurfaceHasMatchingProperties(bool use_distance_field_text, | 343 skia::RefPtr<SkSurface> CreateSkSurface(bool use_distance_field_text, |
343 bool can_use_lcd_text) const; | 344 bool can_use_lcd_text); |
344 | 345 |
345 ResourceProvider* resource_provider_; | 346 ResourceProvider* resource_provider_; |
346 ResourceProvider::Resource* resource_; | 347 ResourceProvider::Resource* resource_; |
347 base::ThreadChecker thread_checker_; | 348 base::ThreadChecker thread_checker_; |
| 349 skia::RefPtr<SkSurface> sk_surface_; |
348 | 350 |
349 DISALLOW_COPY_AND_ASSIGN(ScopedWriteLockGr); | 351 DISALLOW_COPY_AND_ASSIGN(ScopedWriteLockGr); |
350 }; | 352 }; |
351 | 353 |
352 class Fence : public base::RefCounted<Fence> { | 354 class Fence : public base::RefCounted<Fence> { |
353 public: | 355 public: |
354 Fence() {} | 356 Fence() {} |
355 | 357 |
356 virtual void Set() = 0; | 358 virtual void Set() = 0; |
357 virtual bool HasPassed() = 0; | 359 virtual bool HasPassed() = 0; |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
487 unsigned image_id; | 489 unsigned image_id; |
488 unsigned bound_image_id; | 490 unsigned bound_image_id; |
489 GLenum texture_pool; | 491 GLenum texture_pool; |
490 GLint wrap_mode; | 492 GLint wrap_mode; |
491 TextureHint hint; | 493 TextureHint hint; |
492 ResourceType type; | 494 ResourceType type; |
493 ResourceFormat format; | 495 ResourceFormat format; |
494 SharedBitmapId shared_bitmap_id; | 496 SharedBitmapId shared_bitmap_id; |
495 SharedBitmap* shared_bitmap; | 497 SharedBitmap* shared_bitmap; |
496 gfx::GpuMemoryBuffer* gpu_memory_buffer; | 498 gfx::GpuMemoryBuffer* gpu_memory_buffer; |
497 skia::RefPtr<SkSurface> sk_surface; | |
498 }; | 499 }; |
499 typedef base::hash_map<ResourceId, Resource> ResourceMap; | 500 typedef base::hash_map<ResourceId, Resource> ResourceMap; |
500 | 501 |
501 static bool CompareResourceMapIteratorsByChildId( | 502 static bool CompareResourceMapIteratorsByChildId( |
502 const std::pair<ReturnedResource, ResourceMap::iterator>& a, | 503 const std::pair<ReturnedResource, ResourceMap::iterator>& a, |
503 const std::pair<ReturnedResource, ResourceMap::iterator>& b); | 504 const std::pair<ReturnedResource, ResourceMap::iterator>& b); |
504 | 505 |
505 struct Child { | 506 struct Child { |
506 Child(); | 507 Child(); |
507 ~Child(); | 508 ~Child(); |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
651 return format_gl_data_format[format]; | 652 return format_gl_data_format[format]; |
652 } | 653 } |
653 | 654 |
654 inline GLenum GLInternalFormat(ResourceFormat format) { | 655 inline GLenum GLInternalFormat(ResourceFormat format) { |
655 return GLDataFormat(format); | 656 return GLDataFormat(format); |
656 } | 657 } |
657 | 658 |
658 } // namespace cc | 659 } // namespace cc |
659 | 660 |
660 #endif // CC_RESOURCES_RESOURCE_PROVIDER_H_ | 661 #endif // CC_RESOURCES_RESOURCE_PROVIDER_H_ |
OLD | NEW |