OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2011 Google Inc. | 3 * Copyright 2011 Google Inc. |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 | 8 |
9 | 9 |
10 | 10 |
11 #ifndef GrResourceCache_DEFINED | 11 #ifndef GrResourceCache_DEFINED |
12 #define GrResourceCache_DEFINED | 12 #define GrResourceCache_DEFINED |
13 | 13 |
14 #include "GrConfig.h" | 14 #include "GrConfig.h" |
15 #include "GrTypes.h" | 15 #include "GrTypes.h" |
16 #include "GrTMultiMap.h" | 16 #include "SkTMultiMap.h" |
17 #include "GrBinHashKey.h" | 17 #include "GrBinHashKey.h" |
18 #include "SkMessageBus.h" | 18 #include "SkMessageBus.h" |
19 #include "SkTInternalLList.h" | 19 #include "SkTInternalLList.h" |
20 | 20 |
21 class GrCacheable; | 21 class GrCacheable; |
22 class GrResourceCache; | 22 class GrResourceCache; |
23 class GrResourceCacheEntry; | 23 class GrResourceCacheEntry; |
24 | 24 |
25 class GrResourceKey { | 25 class GrResourceKey { |
26 public: | 26 public: |
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
327 enum BudgetBehaviors { | 327 enum BudgetBehaviors { |
328 kAccountFor_BudgetBehavior, | 328 kAccountFor_BudgetBehavior, |
329 kIgnore_BudgetBehavior | 329 kIgnore_BudgetBehavior |
330 }; | 330 }; |
331 | 331 |
332 void internalDetach(GrResourceCacheEntry*, BudgetBehaviors behavior = kAccou
ntFor_BudgetBehavior); | 332 void internalDetach(GrResourceCacheEntry*, BudgetBehaviors behavior = kAccou
ntFor_BudgetBehavior); |
333 void attachToHead(GrResourceCacheEntry*, BudgetBehaviors behavior = kAccount
For_BudgetBehavior); | 333 void attachToHead(GrResourceCacheEntry*, BudgetBehaviors behavior = kAccount
For_BudgetBehavior); |
334 | 334 |
335 void removeInvalidResource(GrResourceCacheEntry* entry); | 335 void removeInvalidResource(GrResourceCacheEntry* entry); |
336 | 336 |
337 GrTMultiMap<GrResourceCacheEntry, GrResourceKey> fCache; | 337 SkTMultiMap<GrResourceCacheEntry, GrResourceKey> fCache; |
338 | 338 |
339 // We're an internal doubly linked list | 339 // We're an internal doubly linked list |
340 typedef SkTInternalLList<GrResourceCacheEntry> EntryList; | 340 typedef SkTInternalLList<GrResourceCacheEntry> EntryList; |
341 EntryList fList; | 341 EntryList fList; |
342 | 342 |
343 #ifdef SK_DEBUG | 343 #ifdef SK_DEBUG |
344 // These objects cannot be returned by a search | 344 // These objects cannot be returned by a search |
345 EntryList fExclusiveList; | 345 EntryList fExclusiveList; |
346 #endif | 346 #endif |
347 | 347 |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
394 GrResourceCache* fCache; | 394 GrResourceCache* fCache; |
395 }; | 395 }; |
396 #else | 396 #else |
397 class GrAutoResourceCacheValidate { | 397 class GrAutoResourceCacheValidate { |
398 public: | 398 public: |
399 GrAutoResourceCacheValidate(GrResourceCache*) {} | 399 GrAutoResourceCacheValidate(GrResourceCache*) {} |
400 }; | 400 }; |
401 #endif | 401 #endif |
402 | 402 |
403 #endif | 403 #endif |
OLD | NEW |