diff options
| author | 2010-08-24 17:20:20 -0700 | |
|---|---|---|
| committer | 2010-08-24 17:20:20 -0700 | |
| commit | a84e02ce3cc392ccf23bbe89cdfbef650047ffe7 (patch) | |
| tree | 6ddb05a329a031522ccd45c477d11556dfdb5ee1 /libs/hwui/GradientCache.cpp | |
| parent | 17b4d9ea826609f26a73077975c2399f91b5ca36 (diff) | |
| parent | fb8b763f762ae21923c58d64caa729b012f40e05 (diff) | |
Merge "Use only one GL context per process, share chaches."
Diffstat (limited to 'libs/hwui/GradientCache.cpp')
| -rw-r--r-- | libs/hwui/GradientCache.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/libs/hwui/GradientCache.cpp b/libs/hwui/GradientCache.cpp index 59fa0a7badcd..58920bd6f96d 100644 --- a/libs/hwui/GradientCache.cpp +++ b/libs/hwui/GradientCache.cpp @@ -22,6 +22,7 @@ #include <SkGradientShader.h> #include "GradientCache.h" +#include "Properties.h" namespace android { namespace uirenderer { @@ -30,6 +31,20 @@ namespace uirenderer { // Constructors/destructor /////////////////////////////////////////////////////////////////////////////// +GradientCache::GradientCache(): + mCache(GenerationCache<SkShader*, Texture*>::kUnlimitedCapacity), + mSize(0), mMaxSize(MB(DEFAULT_GRADIENT_CACHE_SIZE)) { + char property[PROPERTY_VALUE_MAX]; + if (property_get(PROPERTY_GRADIENT_CACHE_SIZE, property, NULL) > 0) { + LOGD(" Setting gradient cache size to %sMB", property); + setMaxSize(MB(atof(property))); + } else { + LOGD(" Using default gradient cache size of %.2fMB", DEFAULT_GRADIENT_CACHE_SIZE); + } + + mCache.setOnEntryRemovedListener(this); +} + GradientCache::GradientCache(uint32_t maxByteSize): mCache(GenerationCache<SkShader*, Texture*>::kUnlimitedCapacity), mSize(0), mMaxSize(maxByteSize) { |