| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2006 The Android Open Source Project | 2 * Copyright 2006 The Android Open Source Project |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be found
in the LICENSE file. | 4 * Use of this source code is governed by a BSD-style license that can be found
in the LICENSE file. |
| 5 */ | 5 */ |
| 6 | 6 |
| 7 #ifndef SkGlyphCache_DEFINED | 7 #ifndef SkGlyphCache_DEFINED |
| 8 #define SkGlyphCache_DEFINED | 8 #define SkGlyphCache_DEFINED |
| 9 | 9 |
| 10 #include "SkBitmap.h" | 10 #include "SkBitmap.h" |
| (...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 265 SkChunkAlloc fGlyphAlloc; | 265 SkChunkAlloc fGlyphAlloc; |
| 266 | 266 |
| 267 SkAutoTArray<CharGlyphRec> fPackedUnicharIDToPackedGlyphID; | 267 SkAutoTArray<CharGlyphRec> fPackedUnicharIDToPackedGlyphID; |
| 268 | 268 |
| 269 // used to track (approx) how much ram is tied-up in this cache | 269 // used to track (approx) how much ram is tied-up in this cache |
| 270 size_t fMemoryUsed; | 270 size_t fMemoryUsed; |
| 271 | 271 |
| 272 AuxProcRec* fAuxProcList; | 272 AuxProcRec* fAuxProcList; |
| 273 }; | 273 }; |
| 274 | 274 |
| 275 class SkAutoGlyphCache : public skstd::unique_ptr<SkGlyphCache, SkGlyphCache::At
tachCacheFunctor> { | 275 class SkAutoGlyphCache : public std::unique_ptr<SkGlyphCache, SkGlyphCache::Atta
chCacheFunctor> { |
| 276 public: | 276 public: |
| 277 /** deprecated: use get() */ | 277 /** deprecated: use get() */ |
| 278 SkGlyphCache* getCache() const { return this->get(); } | 278 SkGlyphCache* getCache() const { return this->get(); } |
| 279 | 279 |
| 280 SkAutoGlyphCache(SkGlyphCache* cache) : INHERITED(cache) {} | 280 SkAutoGlyphCache(SkGlyphCache* cache) : INHERITED(cache) {} |
| 281 SkAutoGlyphCache(SkTypeface* typeface, const SkDescriptor* desc) | 281 SkAutoGlyphCache(SkTypeface* typeface, const SkDescriptor* desc) |
| 282 : INHERITED(SkGlyphCache::DetachCache(typeface, desc)) | 282 : INHERITED(SkGlyphCache::DetachCache(typeface, desc)) |
| 283 {} | 283 {} |
| 284 /** deprecated: always enables fake gamma */ | 284 /** deprecated: always enables fake gamma */ |
| 285 SkAutoGlyphCache(const SkPaint& paint, | 285 SkAutoGlyphCache(const SkPaint& paint, |
| 286 const SkSurfaceProps* surfaceProps, | 286 const SkSurfaceProps* surfaceProps, |
| 287 const SkMatrix* matrix) | 287 const SkMatrix* matrix) |
| 288 : INHERITED(paint.detachCache(surfaceProps, SkPaint::FakeGamma::On, matr
ix)) | 288 : INHERITED(paint.detachCache(surfaceProps, SkPaint::FakeGamma::On, matr
ix)) |
| 289 {} | 289 {} |
| 290 SkAutoGlyphCache(const SkPaint& paint, | 290 SkAutoGlyphCache(const SkPaint& paint, |
| 291 const SkSurfaceProps* surfaceProps, | 291 const SkSurfaceProps* surfaceProps, |
| 292 SkPaint::FakeGamma fakeGamma, | 292 SkPaint::FakeGamma fakeGamma, |
| 293 const SkMatrix* matrix) | 293 const SkMatrix* matrix) |
| 294 : INHERITED(paint.detachCache(surfaceProps, fakeGamma, matrix)) | 294 : INHERITED(paint.detachCache(surfaceProps, fakeGamma, matrix)) |
| 295 {} | 295 {} |
| 296 private: | 296 private: |
| 297 using INHERITED = skstd::unique_ptr<SkGlyphCache, SkGlyphCache::AttachCacheF
unctor>; | 297 using INHERITED = std::unique_ptr<SkGlyphCache, SkGlyphCache::AttachCacheFun
ctor>; |
| 298 }; | 298 }; |
| 299 | 299 |
| 300 class SkAutoGlyphCacheNoGamma : public SkAutoGlyphCache { | 300 class SkAutoGlyphCacheNoGamma : public SkAutoGlyphCache { |
| 301 public: | 301 public: |
| 302 SkAutoGlyphCacheNoGamma(const SkPaint& paint, | 302 SkAutoGlyphCacheNoGamma(const SkPaint& paint, |
| 303 const SkSurfaceProps* surfaceProps, | 303 const SkSurfaceProps* surfaceProps, |
| 304 const SkMatrix* matrix) | 304 const SkMatrix* matrix) |
| 305 : SkAutoGlyphCache(paint, surfaceProps, SkPaint::FakeGamma::Off, matrix) | 305 : SkAutoGlyphCache(paint, surfaceProps, SkPaint::FakeGamma::Off, matrix) |
| 306 {} | 306 {} |
| 307 }; | 307 }; |
| 308 #define SkAutoGlyphCache(...) SK_REQUIRE_LOCAL_VAR(SkAutoGlyphCache) | 308 #define SkAutoGlyphCache(...) SK_REQUIRE_LOCAL_VAR(SkAutoGlyphCache) |
| 309 #define SkAutoGlyphCacheNoGamma(...) SK_REQUIRE_LOCAL_VAR(SkAutoGlyphCacheNoGamm
a) | 309 #define SkAutoGlyphCacheNoGamma(...) SK_REQUIRE_LOCAL_VAR(SkAutoGlyphCacheNoGamm
a) |
| 310 | 310 |
| 311 #endif | 311 #endif |
| OLD | NEW |